【发布时间】:2016-12-13 03:05:40
【问题描述】:
我有一个从网站上抓取表格的代码,并将其读入 pandas Dataframe。但是,由于网站的设计方式,这是通过for 循环完成的。因此,这些表都用相同的name 标记,即:它们在df 名称下标记
代码
soup = bs4.BeautifulSoup(driver.page_source, "html.parser")
for thead in soup.select(".data-point-container table thead"):
tbody = thead.find_next_sibling("tbody")
table = "<table>%s</table>" % (str(thead) + str(tbody))
df = pandas.read_html(str(table))[0]
print(df)
print('-------------')
结果
Table1 FY2012 FY2013 FY2014 FY2015 Last 12 Months
0 item1 value1 value2 value3 value4 value5
1 item2 value1 value2 value3 value4 value5
2 item3 value1 value2 value3 value4 value5
3 item4 value1 value2 value3 value4 value5
4 item5 value1 value2 value3 value4 value5
5 item6 value1 value2 value3 value4 value5
-------------
Table2 FY2012 FY2013 FY2014 FY2015 Last 12 Months
0 item1 value1 value2 value3 value4 value5
1 item2 value1 value2 value3 value4 value5
2 item3 value1 value2 value3 value4 value5
3 item4 value1 value2 value3 value4 value5
-------------
Table3 FY2012 FY2013 FY2014 FY2015 Last 12 Months
0 item1 value1 value2 value3 value4 value5
1 item2 value1 value2 value3 value4 value5
2 item3 value1 value2 value3 value4 value5
3 item4 value1 value2 value3 value4 value5
4 item5 value1 value2 value3 value4 value5
5 item6 value1 value2 value3 value4 value5
-------------
Table4 FY2012 FY2013 FY2014 FY2015 Last 12 Months
0 item1 value1 value2 value3 value4 value5
1 item2 value1 value2 value3 value4 value5
2 item3 value1 value2 value3 value4 value5
3 item4 value1 value2 value3 value4 value5
4 item5 value1 value2 value3 value4 value5
5 item6 value1 value2 value3 value4 value5
6 item7 value1 value2 value3 value4 value5
7 item8 value1 value2 value3 value4 value5
我有没有办法将所有数据帧合并/合并成一个数据帧?
【问题讨论】:
-
再一次,有很多问题可以迎合 DataFrames 的合并。我们想看看您已经尝试过什么,以及是什么让这个问题与本网站上已有的其他问题有显着不同。作为安慰,请尝试查看 Pandas 合并文档。
-
再次......我在征求意见。作为安慰,感谢您的意见。
标签: python selenium pandas dataframe