Задать вопрос
@shadrin_ss
Junior

Find_all None не получается парсить что делать?

import requests
from bs4 import BeautifulSoup


def get_html(url):
	r = requests.get(url)
	return r.text


def get_all_links(html):
	soup = BeautifulSoup(html, 'lxml')	
	spans = soup.find('div', attrs = { ' class ' : 'line__wrapper ps ps--active-y' })
	span_s = spans.find_all('span', class_='line-event__name')

	links = []
	 
	for span in span_s:
		a = span.find('a').get('href')
		links.append(a)
	return links


def main():
	url = 'https://betcity.ru/ru/live/soccer/' 
	all_links = get_all_links( get_html(url) )

	for i in all_links:
		print(i)


if __name__ == '__main__':
	main()


Ошибка:
Traceback (most recent call last):
  File "MAIN.py", line 32, in <module>
    main()
  File "MAIN.py", line 25, in main
    all_links = get_all_links( get_html(url) )
  File "MAIN.py", line 13, in get_all_links
    span_s = spans.find_all('span', class_='line-event__name')
AttributeError: 'NoneType' object has no attribute 'find_all'


Не могу понять что делать только начал изучать парсинг, и сразу же вилы :(
Помогите пожалуйста
P.S. С классами уже так от болды поиграл думал версия bs тупит)
  • Вопрос задан
  • 296 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@AWEme
Retard Soft Inc.
Проблема в Javascript. Весь контент на сайте отображается с его помощью, а requests его не обрабатывает. Совсем.
Эта проблема решается двумя способами:
  • Публичный API (в вашем случае глухой вариант)
  • Selenium
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы