Как убрать окно «Люди также спрашивают» из поиска Google? - PullRequest
1 голос
/ 27 марта 2019

Мне нужно отказаться от "Люди также спрашивают": вопросы и ответы.

Я делаю поиск в Google, а затем отбрасываю его с помощью bueatifulsoup.

import requests
from bs4 import BeautifulSoup
import html2text
import urllib.request

link = "https://www.google.com/search?client=firefox-b-d&source=hp&ei=v0mUXPu2ApTljwS6iLnABA&ei=lAyVXMPFCsaUsgXqmZT4DQ&q=what+is+java"

headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}
page = requests.get(link ,headers = headers)
soup = BeautifulSoup(page.content, 'html.parser')
#For answers :
mydivs = soup.find_all('div', class_="ILfuVd NA6bn")

Результаты представляют собой пустой список. Я проверил в файле HTML, и ответы на самом деле под этим классом

1 Ответ

0 голосов
/ 27 марта 2019

Главная страница Google обновляется при вводе текста в поле поиска, поэтому вы не сможете получить результаты, выполнив простой запрос на странице поиска.

Вы можете перейти к https://google.com в своем браузере, открыть панель «Инструменты разработки» (обычно F12) и просмотреть вкладку «Сеть», чтобы увидеть основные запросы, поступающие в API автозаполнения.

Похоже, что конечной точкой является https://www.google.com/complete/search?q=yourQueryHere&client=psy-ab,, которую проще запрашивать, чем HTML-страницу:

query = "what is java"
res = requests.get("https://google.com/complete/search?client=psy-ab&q=" + query)
print(res)

Кроме того, Google, вероятно, не хочет, чтобы люди отказывались от этого, поэтому вы, вероятно, достигнете ограничения скорости, если сделаете слишком много запросов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...