selenium爬取国家卫健委疫情数据

selenium爬取国家卫健委疫情数据

看老师们都说卫健委网页反爬机制很高,亲测使用selenium+火狐驱动有效

此时我的geckodriver放在爬虫文件中,跟.py文件同级

from selenium.webdriver import Firefox
from selenium.webdriver import FirefoxOptions
import time,re

option = FirefoxOptions()
option.add_argument("--headless")  # 隐藏浏览器
# option.add_argument('--no-sandbox')
browser = Firefox(executable_path='geckodriver',options=option)
url = "http://www.nhc.gov.cn/xcs/yqtb/list_gzbd.shtml"
browser.get(url)
time.sleep(3)   #火狐需要人为等待,设置等待时间为5s
# print(browser.page_source)     #查看源码
'''
#全部连接
alls = browser.find_elements_by_css_selector("li a")
for i in alls:
    print(i.get_attribute('href'),i.text)   #i.get_attribute('href')是首页所有连接(不打算写其他页了)
'''
new_url = browser.find_element_by_css_selector("li a").get_attribute('href')   #以一个为例
browser.get(new_url)
time.sleep(3)
news = browser.page_source
# print(news)   #每页全部信息
ch_all_dict = {
   }
all_dict = {
   }
gat_dict = {
   }   #港澳台
#group(0)代表匹配的整句话


'''我国31个省(自治区、直辖市)和新疆生产建设兵团(不包括港澳台)'''
all_dict['pub_time'] = re.search('截至(.*?)24时',news).group(1)   #group(1)代表括号里的内容
#累计确诊(tx已有)
all_dict['confirm_all'] = re.search('据31个省(自治区、直辖市)和新疆生产建设兵团.*?累计报告确诊病例(.*?)例,',news).group(1)
#现有确诊
all_dict['confirm_now'</
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值