|
|
|
| Помогите, пожалуйста, написать рег выражение, которое может извлекать ссылки из Google
Пока придумал, как ссылки стянуть с раздела <cite></cite>
$pattern = '|<cite>([^<]+)</cite>|i';
|
Но здесь есть одно но:
www.domain.ru/ - 31k - . | |
|
|
|
|
|
|
|
для: lgar
(25.10.2008 в 15:33)
| |
$pattern = '|<h3 class=r><a href=\"([^\"]+)\"[^>]*>(.+)|isU';
|
или
$pattern = '|<h3 class=r><a href=\"([^\"]+)\"[^>]*>(.+)</a>|isU';
|
Так тоже работает, но есть мусор
Результат:
http://www.studs.ru/lekcii.php
http://www.studs.ru/
http://kursoviki.spb.ru/lekcii.php
http://kursoviki.spb.ru/
http://referat.ru/pub/folder/235
http://www.5-ka.com/
http://varles.narod.ru/
http://matclub.ru/
http://err.hc.ru/locked/
http://www.polit.ru/lectures/index.html
http://news.google.ru/news?hl=ru&q=%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D0%B8&lr=&um=1&ie=UTF-8&sa=X&oi=news_result&resnum=11&ct=title | |
|
|
|
|
|
|
|
для: lgar
(25.10.2008 в 16:01)
| | Не понятный вопрос -> хреновый ответ.
Какие ссылки вам надо? | |
|
|
|
|
|
|
|
для: AcidTrash
(25.10.2008 в 20:19)
| | Вопрос такой: какое регулярное выражение позволит нормально извлекать ссылки из выдачи Google? Если есть пример, то если не жалко, его можно тут привести.
Я с регулярками не особо дружу (раньше толком не приходилось сталкиваться), у меня получилось из первого примера вывести ссылки из раздела <cite></cite>, но там у меня есть помеха - размер страницы, например 54K и потом неизвестно для чего он нужен.
Со второй регуляркой извлечение ссылок чуть лучше, но если в выдаче на один сайт ПС выдаёт две ссылки, то одна из них не нужна (но это не смертельно).
Например,
http://www.studs.ru/lekcii.php
http://www.studs.ru/
и ещё вылезают служебные ссылки, которые вторично надо очищать.
Например,
http://news.google.ru/news?hl=ru&q=%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D0%B8&lr=&um=1&ie=UTF-8&sa=X&oi=news_result&resnum=11&ct=title
Из-за этого и спрашиваю, может у кого-то завалялось хорошее регулярное выражение, которое сразу извлечёт ссылки из выдачи без мусора. Хотя и так сойдёт мне. | |
|
|
|
|
|
|
|
для: lgar
(25.10.2008 в 21:46)
| | Если служебные ссылки, которые вторично надо очищать относятся к хосту "google.ru", то попробуй определять наличие "google.ru" в сылке, прежде чем ее бросать в файл или выводить на экран | |
|
|
|