Вопрос, парсинг поста с ключевым словом

sum41

Client
Регистрация
09.10.2014
Сообщения
7
Благодарностей
0
Баллы
1
Добрый день! Знающие люди, помогите, пожалуйста, докрутить шаблон. Нужно реализовать такую конструкцию ..
Найти на странице -ключевое слово- , и взять урл поста который содержит -ключевое слово-
 

sum41

Client
Регистрация
09.10.2014
Сообщения
7
Благодарностей
0
Баллы
1
Найти -ключевое слово- сделал через поиск элементов на странице по тегу и тд, а в вот взять урл поста содержащего -ключевое слово- не могут понять как прицепить
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 470
Благодарностей
8 691
Баллы
113
а что за страница - выдача поисковика?
 

sum41

Client
Регистрация
09.10.2014
Сообщения
7
Благодарностей
0
Баллы
1

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 470
Благодарностей
8 691
Баллы
113
допустим верстка страницы имеет вид:

Код:
<div class="content">
<div class="article">
<h2>заголовок бла бла бла 1</h2>
статья бла бла бла 1..
<a href="урл полной статьи 1">Читать</a>
</div>
<div class="article">
<h2>заголовок бла бла бла 2</h2>
статья бла бла бла 2..
<a href="урл полной статьи 2">Читать</a>
</div>
<div class="article">
<h2>заголовок бла бла бла 3</h2>
статья бла бла бла 3..
<a href="урл полной статьи 3">Читать</a>
</div>
</div>
например нас интересует ключевое слово "бла бла бла 2"
в конструкторе регулярок составляем регулярку, которая парсит
от бла бла бла 2 до тега </div>
у меня получилась такая:
Код:
(?<=бла\ бла\ бла\ 2)[\w\W]*?(?=</div>)
(вместо бла\ бла\ бла\ 2 нужно будет вписать переменную с ключевиком, предварительно сделав в ней замену {-String.Space-} на \{-String.Space-})

и уже из получившегося куска достаем урл поста регуляркой:
Код:
(?<=<a\ href=")[\w\W]*?(?=">Читать)
 
Последнее редактирование:
  • Спасибо
Реакции: sum41

sum41

Client
Регистрация
09.10.2014
Сообщения
7
Благодарностей
0
Баллы
1
В какую сторону смотреть понял, спасибо! НО верстка немного другая.

Код ниже это фрагмент, который повторяется на странице, меняются только урлы и текст. Надо найти ключевое слово *программа*. Если найдено, взять ссылку из href *http:// Эту ссылку надо спарсить.com*

Код:
<div class="item-inner">
<a href="http:// Эту ссылку надо спарсить.com" target="_blank" class="post-link">
<div style="min-height: 226px;" class="pic">                            </div</a>
<div class="infomation">
<div class="sharing-info">
<div class="sharing-data">
<p class="description">Zennoposter - уникальная программа, которая позволяет автоматизировать действия в интернете</p>
</div></div></div></div>
Выдрать его с помощью регулярки из всей страницы я могу, НО не могу понять как составить регулярку при которой этот код (именно этот фрагмент) будет браться из всей страницы при условии что есть ключевое слово *программа*
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
Через конструктор действий в цикле, используя счетчик как номер совпадения забирать outerhtml у элемента div с классом item-inner
Потом парсить полученные данные в поисках ключей и если найдено что то по ващей логике, то искать и парсить ссылку.
 
  • Спасибо
Реакции: sum41

sum41

Client
Регистрация
09.10.2014
Сообщения
7
Благодарностей
0
Баллы
1
Спасибо Вам, разобрался
 

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