как в поиске гугл вернуть результаты на английском - PullRequest
3 голосов
/ 12 апреля 2019

Я пытаюсь найти в Google некоторые продукты, но язык результатов, который возвращает Google, зависит от прокси-сервера, я пытался исправить это, используя 'accept-language': 'en-US,en;q=0.9' в своих заголовках, но все еще не использовал

import requests
from bs4 import BeautifulSoup
products=["Majestic Pet Stairs Steps","Ball Jars Wide Mouth Lids 12/Pack","LED Duck Color Changing Floating Speaker"]
for product in products:
    headers = {
    'authority': 'www.google.com',
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36',
    'accept-language': 'en-US,en;q=0.9'}
    url = 'https://google.com/search?q={}'.format(product)
    PROXY = None 
    res=requests.get(url,headers=headers,proxies=PROXY)
    if res.status_code!=200:
        print("bad proxy")
        break
    soup = BeautifulSoup(res.text,"lxml")
    print(soup.title.text)

я хочу, чтобы результаты всегда были на английском (независимо от прокси)

Ответы [ 2 ]

1 голос
/ 13 апреля 2019

Есть эта удобная библиотека, которую я использую для своих поисков, фрагмент из моего приложения:

pip install Google для установки, RFC

from googlesearch import search
results = list(search(str(tag)+' '+str(intitle), domains = ['stackoverflow.com'], stop = SITE.page_size))
1 голос
/ 12 апреля 2019

Они предоставляют API для поиска: https://developers.google.com/custom-search/v1/overview

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

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