Не выводится результат парсинга
Пытаюсь спарсить Яндекс страницу, а именно взять ссылки на сайты, которые предлагает Яндекс.
Но парсится он через раз. Например сейчас при запуске он выводит теги, а при следующем запуске:
Process finished with exit code 0
В чем проблема? Это капча вылезает?
import requests
from bs4 import BeautifulSoup
import csv
# pip install beautifulsoup4
# pip install lxml
def get_html(url):
r = requests.get(url) # Получим метод Response
r.encoding = 'utf8'
return r.text # Вернем данные объекта text
def get_divs(html):
soup = BeautifulSoup(html, 'lxml')
divs = soup.findAll('li', {'class': ['serp-item']})
for i in divs:
cols = i.find_all('a', {'class': ['link link_theme_normal organic__url link_cropped_no i-bem']})
print(cols)
a = get_divs(get_html('https://yandex.ru/search/?text=%D0%B0%D0%B2%D1%82%D0%BE%D1%84%D0%BE%D1%80%D1%83%D0%BC&lr=39'))
Сам запрос:
https://yandex.ru/search/?text=%D0%B0%D0%B2%D1%82%D0%BE%D1%84%D0%BE%D1%80%D1%83%D0%BC&lr=39
Хочу спарсить ссылки, предлагаемые Яндексом:

Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Да, если вы посмотрите html, который получаете, то увидите, что там капча:
<div class="captcha-wrapper">...
<div class="captcha i-bem">...
<div class="captcha__image">...
<div class="captcha__play-button">...
<div class="captcha__play">...
<div class="captcha__play-image">...
<div class="captcha__play-text">...
Картинка капчи, которая вышла у меня:
