网页表格抓取(利用pandas库中的read_html方法快速抓取网页中常见的表格型数据)
优采云 发布时间: 2021-11-27 19:00网页表格抓取(利用pandas库中的read_html方法快速抓取网页中常见的表格型数据)
使用pandas库中的read_html方法快速抓取网页中常见的表格数据
表格形式
我们在网上经常会看到这样的表格,比如:
QS2018世界大学排名:
可以看出表格类型的表格页结构大致如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
...
...
...
...
...
...
...
...
...
...
...
首先简单解释一下上面出现的几个标签的含义:
1
2
3
4
5
6
: 定义表格
: 定义表格的页眉
: 定义表格的主体
: 定义表格的行
: 定义表格的表头
: 定义表格单元
使用 pandas 模块中的 read_html 函数可以轻松快速地捕获此类表格数据。下面就来做吧。
我们以中国上市公司信息页面上的表格为例,感受一下read_html函数的威力。
1
2
3
4
5
6
7
8
import pandas as pd
import csv
for i in range(1,178): # 爬取全部177页数据
url = 'http://s.askci.com/stock/a/?reportTime=2017-12-31&pageNum=%s' % (str(i))
tb = pd.read_html(url)[3] #经观察发现所需表格是网页中第4个表格,故为[3]
tb.to_csv(r'1.csv', mode='a', encoding='utf_8_sig', header=1, index=0)
print('第'+str(i)+'页抓取完成')
之前买房的时候爬上实时登记情况~