Парсинг результатов веб-поиска Гугла и Яндекса

Р
На сайте с 17.05.2011
Offline
136
3907

И тот и другой, конечно же, не разрешают в прямую себя парсить (это, кажется, написано в их пользовательских соглашениях и это реально не работает - я проверил).

Однако у Гугла есть Google Custom Search API. Уверен, что и у Яндекса есть API, позволяющий либо за деньги, либо бесплатно в определенных пределах ЛЕГАЛЬНО получать результаты поиска по вебу.

У Гугла, например, указано, что API допускает бесплатное использование при не более чем 100 запросов в сутки.

Однако, я так и не понял, позволяют ли эти API осуществлять поиск в широких пределах.

При создании search engine в панели Гугла можно либо указать сайт, по которому предполагается осуществлять поиск, либо искать по всему вебу, но только среди сайтов с правильной разметкой (соответствующих schema.org).

У Яши я пока что-то вообще не нашел подходящий API (но признаюсь, я только начал искать).

А что бы хотелось: например, найти топ 100 (200, 300, 500... - сколько будет возможно) документов по заданному запросу (например, "Самостоятельное путешествие по Греции", ну или мало ли что еще) и получить URLы этих документов (в принципе мне больше ничего не нужно, но если будет возможность получить еще даты, например - будет здорово, мало ли пригодится).

secondary
На сайте с 20.12.2012
Offline
142
#1

В чем трудность парсинга?

Seo аудит сайтов. Консультации. Качественная внутренняя оптимизация. (/ru/forum/803695) Полная подготовка проектов с нуля! Оптимизация готовых сайтов.
Р
На сайте с 17.05.2011
Offline
136
#2
secondary:
В чем трудность парсинга?

В том что и гугл и яндекс отдают результаты поиска только "человеку" (браузеру). Если вы попытаетесь на своем сервере выполнить скрипт

<?php echo file_get_contents('http://google.com'); ?>

Он выдаст пустую страницу. И так с любым запросом к гуглу.

Да и работать с JSON переменной намного приятнее чем парсить выдачу замешанную на javascript и бояться, что завтра вебмастера гугла или яши изменят выдачу и парсер перестанет работать.

Вот такие мысли.

PS. Но на самом деле если бы Гугл и Яша отдавали бы серверу свои страницы, я бы не заморачивался на API и делал бы парсер. Но пока не работает...

Р
На сайте с 17.05.2011
Offline
136
#3

Неужели никто не знает?! :(

LEOnidUKG
На сайте с 25.11.2006
Offline
1762
#4

Если ваши знания заканчиваются на file_get_contents, то обратитесь к программистам, они вам напишут нормальный парсер.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
Р
На сайте с 17.05.2011
Offline
136
#5
LEOnidUKG:
Если ваши знания заканчиваются на file_get_contents, то обратитесь к программистам, они вам напишут нормальный парсер.

А какая разница какой функцией пользоваться? (это без иронии вопрос, неужели curl лучше бы справился?)

Вообще вопрос был, скорее не про PHP, а про гугловские и яндексовские API. Т.е. меня в первую очередь интересует как это сделать в "белую"

LEOnidUKG
На сайте с 25.11.2006
Offline
1762
#6
А какая разница какой функцией пользоваться? (это без иронии вопрос, неужели curl лучше бы справился?)

Я серьёзно вам написал совет. Если вы разницу между этими функциями не видите, то мой ответ ещё более актуален.

Р
На сайте с 17.05.2011
Offline
136
#7
LEOnidUKG:
Я серьёзно вам написал совет. Если вы разницу между этими функциями не видите, то мой ответ ещё более актуален.

Прошу не зацикливаться на этом. Меня интересует в первую очередь API.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий