+
95
-

回答

我们以爬取新冠疫情数据为例:

#!/usr/local/python3/bin/python3
# -*- coding: utf-8 -*
from DrissionPage import MixPage

# 用 s 模式创建页面对象
page = MixPage('s')
# 访问数据网页
page.get('https://www.outbreak.my/zh/world')

# 获取表头元素
thead = page('tag:thead')
# 获取表头列,跳过其中的隐藏的列
title = thead.eles('tag:th@@-style:display: none;')
data = [th.text for th in title]

print(data) # 打印表头

# 获取内容表格元素
tbody = page('tag:tbody')
# 获取表格所有行
rows = tbody.eles('tag:tr')

for row in rows:
# 获取当前行所有列
cols = row.eles('tag:td')
# 生成当前行数据列表(跳过其中没用的几列)
data = [td.text for k, td in enumerate(cols) if k not in (2, 4, 6)]

print(data) # 打印行数据

执行效果如下:


网友回复

我知道答案,我要回答