@Switchback09

Beautiful soup, list index out of range как пофиксить?

Я посмотрел на код элемента, и нашел то что мне нужно для 'namePlayer', это был 4 столбец и тэг 'a'. И я пытался его найти в answers.append через cols[3].a.text

Но когда я компилирую код, я получаю ошибку IndexError. После я пытался изменить индекс на 2, 3, 4, 5 но ничего не изменилось

Вопрос: почему я получаю ошибку IndexError: list index out of range когда все правильно(вроде как :D)

Код:
#!/usr/bin/env python3

import re
import urllib.request
from bs4 import BeautifulSoup

class AppURLopener(urllib.request.FancyURLopener):
    version = "Mozilla/5.0"


def get_html(url):
    opener = AppURLopener()
    response = opener.open(url)
    return response.read()

def parse(html):
    soup = BeautifulSoup(html)
    table = soup.find(id='answers')

    answers = []

    for row in table.find_all('div')[16:]:
        cols = row.find_all('div')

    answers.append({
        'namePlayer': cols[3].a.text
    })


    for answer in answers:
        print(answers)

def main():
    parse(get_html('http://jaze.ru/forum/topic?id=50&page=1'))

if __name__ == '__main__':
    main()
  • Вопрос задан
  • 235 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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