Основной ответ от гугла Python

На вопросы "Столица россии" или "сколько дней в неделе" гугл выдает ответы еще в поисковой строке Пример

Как можно получать этот ответ не переходя на сайты и не открывая окно браузера?


Ответы (1 шт):

Автор решения: Денис Степанов
import pydash
import requests
import json
import html
import re

req_text = input()

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36',
}

params = {
    'q': req_text,
    'client': 'psy-ab',
    'gs_ri': 'gws-wiz',
}

res = requests.get("https://www.google.com/complete/search", params=params, headers=headers)

result = html.unescape(re.findall(r"\[.*\]", res.text).pop())
result_json = json.loads(result)

print(pydash.get(result_json, '0.0.-1.ansa.l.-1.il.t.0.t'))
from toolz import get_in, pluck
import requests
import json
import html
import re

req_text = input()

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36',
}

params = {
    'part': req_text,
    'srv': 'morda_ru_desktop',
    'fact': '1',
    'v': '4'
}

res = requests.get("https://yandex.ru/suggest/suggest-ya.cgi", params=params, headers=headers)
result_json = json.loads(res.text)
facts_only = filter(lambda x: x[0] == 'fact', result_json[1])

print(list(map(lambda list: list[1] + ": " + list[2], facts_only)))
→ Ссылка