не могу напечатать df.shape, и я читаю его в формате dataframe из панд - PullRequest
0 голосов
/ 12 июня 2018

не может напечатать df.shape, и он читает в формате данных уже из панд, спасибо!

# -*- coding:UTF-8 -*-

from pyvirtualdisplay import Display
from selenium import webdriver
import pandas as pd

display = Display(visible=0, size=(1024, 768))
display.start()

driver = webdriver.Firefox()
driver.get("http://www.fdmbenzinpriser.dk/searchprices/5/")

lines = [event.get_attribute('outerHTML') for event in driver.find_elements_by_xpath('//table[@id="sortabletable"]')]

df = pd.read_html(lines[0])
print df.shape

driver.close()
display.stop()

Вывод:

AttributeError: 'list' object has no attribute 'shape'

строк [0] возвращение:

[                                           Unnamed: 0   Pris                        Adresse      Tidspunkt
0                                                 NaN   8.99       Odinsvej 2 4100 Ringsted  11 timer 55 m
1                                                 NaN   9.09   Sdr.Havnegade 3 6000 Kolding  14 timer 48 m
2                                                 NaN   9.09    Vestermarksvej 2 6600 Vejen  16 timer 35 m
3                                                 NaN  10.99  Bøsbrovej 92B 8940 Randers SV   21 timer 1 m

Ответы [ 2 ]

0 голосов
/ 12 июня 2018

Метод handml чтения Pandas не возвращает фрейм данных, он возвращает список фреймов данных: http://pandas.pydata.org/pandas-docs/version/0.22/generated/pandas.read_html.html Вы всегда можете проверить тип объекта в python, используя:

print(type(obj))
0 голосов
/ 12 июня 2018

Я думаю, что нужно изменить:

df = pd.read_html(lines[0])

на:

df = pd.read_html(lines[0])[0]

И для всех данных:

df = pd.concat([pd.read_html(line)[0] for line in lines], ignore_index=True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...