Показаны сообщения с ярлыком Web API. Показать все сообщения
Показаны сообщения с ярлыком Web API. Показать все сообщения

суббота, 7 декабря 2013 г.

Сбор поисковых подсказок Yandex (многопоточный PHP сборщик)

При наборе слов в Яндекс также как и в Гугл, выдаются поисковые подсказки по словам. Т.е набрав слово сбор данных мы получим следующее :скриншот поисковых подсказок Яндекс по слову сбор данных

Поискав в интернете определяем что запрос идет по следующему адресу : т.е в самом запросе указывается слово по которому надо получить подсказки. Модифицируем и улучим код для сбора из предыдущей статьи по созданию сборщика поисковых подсказок Google. Для этого я создал базовый класс сборщика CBaseWebAPI, в который вынес весь повторяющийся код из двух предыдущих сборщиков и класс CYandexSuggest, в котором собственно описал особенности сбора поисковых запросов Yandex, взяв за основу базовый класс. В итоге у нас получился очень красивый и понятный код для всех классов. Преимущества - быстрая расширяемость и модификация. Слабое место прокси, но как показывает практика зарядив около 10 000 проксей мы получаем вполне устойчивую работу в 20 потоков.

скриншот сбора поисковых подсказок Yandex

Далее в следующем посту сделаем так чтобы в процессе работы мы могли пополнять прокси сервера. Это нужно для потоков где произошла выбраковка ниже критической отметки. Так мы сможем продолжать сбор без перезапуска скрипта.
Материалы :
Как всегда весь исходный код по этой статье можно скачать здесь. Руководство «Как запустить этот и другие PHP скрипты с этого сайта» всегда можно найти здесь. Где взять платные и бесплатные прокси сервера, можно найти здесь. А где взять поисковые запросы и ключевые слова можно найти здесь.

Сбор поисковых подсказок Google (многопоточный PHP сборщик)

При наборе слов в Google нам выдаются определенные поисковые подсказки. Т.е например при вводе автоматизация бизнеса , гугл нам предлагает следующие варианты поисковых запросов :

скриншот поисковых подсказок по автоматизации бизнеса

Поискав в интернете можно найти урл, по которому идет запрос этих данных : т.е в самом конце - то слово, по которому получаются подсказки. Модифицируем исходный код из обучающего примера по созданию сборщика. Создадим класс CGoogleSuggest, подключим его на сбор, слегка модифицировав паузы для работы скриптов (подбирал экспериментальным путем) мы получим код для сбора поисковых подсказок Гугла.
Таким образом мы с минимальными усилиями получили сборщик поисковых подсказок Google. Слабым местом этого сборщика как и предыдущего являются прокси. В следующих постах я расскажу как решить эту проблему.
Материалы :
Весь исходный код по этой статье можно скачать здесь. Руководство «Как запустить этот и другие PHP скрипты с этого сайта» всегда можно найти здесь. Где взять платные и бесплатные прокси сервера, можно найти здесь. А где взять поисковые запросы и ключевые слова можно найти здесь.