一、分析目的
受这次疫情的影响,互联网医疗必然是未来发展的一个趋势,借用在线医疗平台了解用户在线咨询的情况:
一是用户在线咨询的问诊量变化情况;
二是了解用户哪些疾病选择在线咨询较多、希望获得帮助是什么、愿意支付费用是多少等。
本篇主要目的是爬取医疗平台在线咨询数据及问诊量可视化展示。
二、分析步骤及思路
三、爬取数据
爬虫第一步到第四步代码如下:
import requests
from bs4 import BeautifulSoup
import time
start=time.time()
headers={
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.5 Safari/605.1.15'}
re=requests.get('https://www.haodf.com/sitemap-cf/2020/',headers=headers) #发送请求获取网页源码
soup=BeautifulSoup(re.text, 'html.parser') #解析源码
### 第一步:获取每一个年份网址链接
### 第二步:获取每一个年份下每一天的网址链接
### 第三步:获取每一天用户在线咨询网址链接,并有页数的变化
### 第四步:获取每一个用户咨询的信息,疾病、疾病描述、希望得到的帮助、患病多久、已就诊医院及科室、用药情况、过敏史、既往病史、咨询价格、咨询数量
#year_list=soup.find_all(name='li')[0].find_all('a') #获取第一个li节点年份的所有a节点信息形成列表
date_list=soup.find_all(name='li')[1].find_all('a') #获取第二个li节点天日期的所有a节点信息形成列表
for i in date_list: # 遍历每一天信息a节点下信息列表
n=0
m = 0
date_urls=r'https:'+i.get('href') #得到每一天网址链接的第1页
date=i.get_text() #获取日期
re_1 = requests.get(date_urls, headers=headers) #对每一天网址链接发送请求获取网页源码
soup_1 = BeautifulSoup(re_1.text, 'html.parser') #解析源码
question_page_list