Python: Почему мой код Google Webscraping с помощью BeautifulSoup не возвращает результаты поиска? - PullRequest
0 голосов
/ 10 октября 2019

Я пытаюсь написать скрипт на python, чтобы показать мне ссылки на топ-5 результатов в Google по заданному поисковому запросу.

Я использую красивый суп, и после проверки HTML для Google, я обнаружил, что ссылки на результаты поиска можно найти внутри тегов 'div class = "r" и' a href '.

import bs4, requests

mySearch=input()
address='http://www.google.com/search?q='+mySearch
googleRes=requests.get(address)

googleSoup=bs4.BeautifulSoup(googleRes.text)
linkBlocks=googleSoup.select('div.r a')

Однако список linkBlocks пуст, вместо того, чтобы заполняться ссылками с результатами поиска. Как получить ссылки на результаты поиска в списке linkBlocks.

1 Ответ

1 голос
/ 10 октября 2019

Использование User-Agent

import bs4, requests
headers = {'User-Agent':
       'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36'}
mySearch="beautifulsoup"
address='http://www.google.com/search?q='+mySearch
googleRes=requests.get(address,headers=headers)
googleSoup=bs4.BeautifulSoup(googleRes.text,'html.parser')
linkBlocks=googleSoup.select('div.r a')
print(linkBlocks)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...