Попытка вытащить фрейм данных из таблицы html, однако при запуске df.info возникает ошибка (AttributeError: у объекта «list» нет атрибута «info») - PullRequest
0 голосов
/ 11 марта 2020

Выдержка из кода ниже:

soup = BeautifulSoup(page.content, 'html.parser')

souptable = soup.find(text='header').findParent('table')

df = pd.read_html(str(souptable))

df.info

Я только начинаю с python.

Сначала я использую BeautifulSoup для получения информации с веб-страницы. Затем я ищу конкретное c имя столбца 'header' и нахожу всю таблицу с помощью findParent ('table'), так как у этой таблицы нет идентификатора. Затем я преобразую в pandas фрейм данных, используя read_ html.

. Я пробовал многие другие команды, такие как df.ilo c, df.drop и другие, поскольку я ищу, чтобы переименовать заголовки столбцов. как мой следующий шаг, однако я всегда получаю ошибку ниже. «Информация» изменяется в зависимости от того, какую функцию я пытаюсь использовать.

AttributeError: объект «список» не имеет атрибута «информация»

1 Ответ

0 голосов
/ 11 марта 2020

В основном, согласно документам :

Возвращает:
dfs: список фреймов данных

Когда вы запускаете pd.read_html , он возвращает список фреймов данных. Просто через l oop и распечатайте информацию для каждого:

df_list = pd.read_html(str(souptable))
for df in df_list:
    print(df.info)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...