Pythonerror при извлечении из сети: AttributeError: объект 'NoneType' не имеет атрибута 'find_all' - PullRequest
0 голосов
/ 03 мая 2020

с

AttributeError: у объекта 'NoneType' нет атрибута 'find_all'

для следующего кода

urlpage = 'fasttrack.co.uk/league-tables/tech-track-100/league-table'

page = urllib.request.urlopen(urlpage)
    # parse the html using beautiful soup and store in variable 'soup'
    soup = BeautifulSoup(page, 'html.parser')
    print(soup)
    # find results within table
    table = soup.find('table', attrs={'class': 'tableSorter'})
    results = table.find_all('tr')

Ответы [ 2 ]

0 голосов
/ 04 мая 2020

Если вы перемещаетесь по исходному коду URL, вы обнаружите, что тег таблицы:

<table class="tableSorter2">

Поэтому вместо:

table = soup.find('table', attrs={'class': 'tableSorter'})

используйте:

table = soup.find('table',class_="tableSorter2")
#or
table = soup.find('table', attrs={'class': "tableSorter2"})
0 голосов
/ 03 мая 2020

Это означает, что переменная table равна нулю (нет), скорее всего потому, что soup.find('table', attrs={'class': 'tableSorter'}) не может найти этот элемент

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