从网站的多个页面中提取表

问题描述 投票:0回答:1

我想从以下链接https://www.imei.info/carriers/中提取表并将其保存到csv以下是我的代码:

for i in range(1,44):

url = 'https://www.imei.info/carriers/?page='+str(i)
html = requests.get(url).content
df_list = pd.read_html(html)
df = df_list[-1]
df.to_csv('imei.csv')

在csv中读取时,它仅显示最后一页中的数据

web-scraping screen-scraping
1个回答
0
投票

这是因为您每次写入to_csv时都在擦除上一页。您可以做的是检索所有DataFrame,concat DataFrame列表,然后将输出写入csv:

dfs = []
for i in range(1,44):
    url = 'https://www.imei.info/carriers/?page='+str(i)
    html = requests.get(url).content
    df_list = pd.read_html(html)
    dfs.append(df_list[-1])
output = pd.concat(dfs)
output.to_csv("imei.csv")
© www.soinside.com 2019 - 2024. All rights reserved.