Механическая обработка парсинга HTML - PullRequest
0 голосов
/ 12 ноября 2018

Я хочу использовать mechansoup, чтобы запустить поиск в Google, затем взять результаты первой страницы и вернуть их в список с заголовком и ссылкой.

import mechanicalsoup


browser = mechanicalsoup.StatefulBrowser()
browser.open('http://google.com')
browser.select_form('form[action="/search"]')
browser['q'] = "cookies"
browser.submit_selected()

links = browser.get_current_page().find_all('h3')
usable = []

for link in links:
    u_link = link.find_all('a')
    usable.append(u_link)

print(usable[0])

Этот код возвращает нужные мне данные, но выглядит так:

[<a href="/url?q=https://iambaker.net/cookie-recipes/&amp;sa=U&amp;ved=0ahUKEwjwwKe96s3eAhWUyIMKHYTgCOkQFggUMAA&amp;usg=AOvVaw0x6Run0LppqZLnS9Sul9qH">The 50 Best <b>Cookie</b> Recipes in the World | i am baker</a>]

Я посмотрел страницу результатов поиска Google и обнаружил, что div class = 'r'имеет результаты, и в этом div находится h3 class = "LC201b", который имеет информацию о заголовке, а под ним - cite class = "iUh30", который имеет URL.Проблема в том, что если я попытаюсь нацелиться на этот div, я получу пустой результат.

...