Web Scraping HTML Не совпадает с результатом браузера - PullRequest
0 голосов
/ 02 июня 2019

Для моего проекта мне нужны результаты поиска Google. Я использую запросы Python и BeautifulSoup. Я получаю результаты, но они не такие, как в браузере. Мне нужен именно тот контент, который отображается в моем браузере. Я также попробовал urllib. Но это также отличается от веб-результатов. Может кто-нибудь помочь мне решить это?

import requests
import bs4

link = 'https://www.google.com/'
headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0',
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
        'Accept-Language': 'en-US,en;q=0.5',
        'Accept-Encoding': 'gzip, deflate',
        'DNT': '1',
        'Connection': 'keep-alive',
        'Upgrade-Insecure-Requests': '1'
    }
response = requests.get(link, headers = headers)
soup = bs4.BeautifulSoup(response.text, 'lxml')

1 Ответ

1 голос
/ 02 июня 2019

Большинство веб-сайтов используют JavaScript для обновления сайта.Некоторые из них также пытаются обнаружить сканеры.

Используйте вместо браузера безголовый для целей сканирования.

Как упоминалось в комментариях, некоторые сайты также используют файлы cookie.Например, результаты поиска в Google так хороши в первую очередь потому, что они настроены для пользователя.

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