Невозможно очистить результаты поиска Google, используя красивый суп - PullRequest
0 голосов
/ 10 мая 2019

Я пытаюсь очистить ссылку на флипкарт продукта из результатов поиска Google.Но когда я пытаюсь напечатать ссылку, сопоставив ее с текстом «флипкарта», она ничего не печатает.Что я делаю неправильно?

Вот часть структуры html:

<div class="r">
<a href="https://www.flipkart.com/redmi-note-7-pro-nebula-red-64- 
gb/p/itmferghuf9ky6ru" ping="/url?=https://www.flipkart.com/redmi- 
note-7-pro-nebula-red-64-gb/p/itmferghuf9ky6ru&amp"> 

Результаты запроса попадают под div class = "r".Из этого раздела я пытаюсь получить ссылку на тег привязки.

Вот мой код

input='note 7 pro'
urllib.parse.quote_plus(input)

html = getHTML('https://www.google.co.in/search?q='+input)
main_div=html.findAll('div', {'class':'r'})

for div in main_div:
    link = div.find('a')[href]
    if 'flipkart' in link:
        print(link)

На выходе должна быть полная ссылка на флипкарт продукта.Но программа не показывает никакого вывода.

1 Ответ

0 голосов
/ 10 мая 2019

У вас наверняка будет капча от Google в нескольких запросах.В любом случае, я попытался удалить страницу Google, и класс на div был g

Но ссылка, которую вы ищете, находится на h3 с классом r.

Так что, по моему мнению, вам просто нужно изменить

main_div=html.findAll('div', {'class':'r'})

на

main_div=html.findAll('h3', {'class':'r'})

, и на данный момент оно должно работать

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