Вопрос по поиску элементов

Регистрация
05.06.2013
Сообщения
3
Благодарностей
0
Баллы
1
Всю голову себе сломал в поске решения, как мне указать что поиск элемента мне нужен в определенном блоке если на странице несколько блоков в которых встречаются аналогичные элементы которые мне не нужны.

Если конкретнее то я пытаюсь парсить сниппеты яндекса, тэги div в которых заключен нужный мне текст имеют атрибут class со значением "b-serp-item__text", но в выдачу по многим запросам лезет не нужная мне реклама сниппеты которой тоже заключены в тэг div с таким же атрибутом, отличить сниппеты основной выдачи можно тем что все они находятся в 1 блоке с атрибутом class="b-body-items",
так вот как мне сказать программе чтоб она искала элементы только в этом блоке.
 

WhiteCoder

Client
Регистрация
01.04.2013
Сообщения
104
Благодарностей
69
Баллы
28
Я обычно такую задачу решаю через действие Свой C# код.
В нем ищется определенный элемент, а затем уже в этом элементе ищется нужный нам элемент.
Также твою задачу можно решить если владеешь JavaScript.
Нужно выполнить JavaScript на странице и получить результат.
В самом коде JS поиск вложенного элемента можно произвести через document.querySelector или document.querySelectorAll
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 661
Благодарностей
10 134
Баллы
113
вот вариант без кода C#:
(используется тоже двухпроходный парсинг, а в результате - нет рекламы директа, есть только сами снипеты; также из снипетов вырезаются html-теги)

http://clip2net.com/s/5JDZx3

а вот сам шаблон (результат записывается в файл snipet.txt):
 

Вложения

  • Спасибо
Реакции: mystic_91@mail.ru
Регистрация
05.06.2013
Сообщения
3
Благодарностей
0
Баллы
1
вот вариант без кода C#:
(использetncz тоже двухпроходный парсинг, в результате - нет рекламы директа, есть только сами снипеты)

http://clip2net.com/s/5JDAGA

а вот сам шаблон (результат записывается в файл snipet.txt):
Спасибо за хороший пример, а в таком решении возможно в результате сохранить только чистый текст без html элементов или без мусора никак ?
 

WhiteCoder

Client
Регистрация
01.04.2013
Сообщения
104
Благодарностей
69
Баллы
28
Возможно если регулярным выражением удалить все теги.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 661
Благодарностей
10 134
Баллы
113
Спасибо за хороший пример, а в таком решении возможно в результате сохранить только чистый текст без html элементов или без мусора никак ?
скачайте заново шаблон из моего первого сообщения в этой теме - я потом его дополнял: теперь там чистится хтмл-мусор - на выходе получаются чистые снипеты..
http://zennolab.com/discussion/showthread.php?11443-Вопрос-по-поиску-элементов&p=67322&viewfull=1#post67322
 
  • Спасибо
Реакции: mystic_91@mail.ru
Регистрация
05.06.2013
Сообщения
3
Благодарностей
0
Баллы
1
Огромное спасибо
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)