今天有人叫我把一个网页的所有的表格都提取出来,其实就是把所有的table标签都解析出来,我这里用pandas神器做了一下,发现出奇的简单:
import pandas as pd
import os
from selenium import webdriver
from bs4 import BeautifulSoup
browser = webdriver.Chrome()
document_each_year=browser.get(url)
html = browser.page_source
soup = BeautifulSoup(html, "lxml")
tables=soup.find_all('table')
for i in range(len(tables)):
df_tables=pd.read_html(str(tables[i]))
for j in range(len(df_tables)):
df=df_tables[j]
csv_name=os.path.join('table',str(i)+'_'+str(j)+'.csv')
df.to_csv(csv_name,index=False,header=False)
核心代码就是read_html哈,是不是很简单,哈哈。
参考文献
[1]. Beautiful Soup 爬虫 + Pandas Dataframe, 解析网页的 Table 表格数据. https://blog.csdn.net/Canhui_WANG/article/details/81269814