Python爬虫-----疾病信息爬取

一、爬取内容及网站

1.本次爬取的网站是99健康网中的疾病信息,包括疾病名称,所属科室及体态特征信息
2.网站中具体疾病的搜索路径有两种方式:按科室搜索、按部位搜索
(1)按科室搜索:科室–小科室–所含疾病
在这里插入图片描述

(2)按部位搜索:部位—所含疾病
在这里插入图片描述

可以看出,按部位搜索的路径更短些,因此本次使用按部位搜索的过程,进行疾病信息的爬取。
3.整体爬取思路:爬取所含部位----按部位爬取每一部位包含的疾病名称及疾病对应链接–爬取对应疾病信息—写入表格并保存
4.网址特点
(1)部位信息对应网址为:jbk.99.com.cn/buei/
(2)爬取得到所有部位[‘头部’,…]
(3)某一部位包含的疾病:jbk.99.com.cn/buwei/toubu-n.html(只需添加部位拼音和统一后缀.html),爬取该部位所有的疾病,同时网页源码中有该疾病对应的链接前缀,也一并爬取保存。-n中,n 为页码
在这里插入图片描述

4.疾病具体链接为https+上一步爬到的疾病链接+zhengzhuang.html

二、爬取过程(源码)

// An highlighted block
import re
import urllib.request
import urllib
import xlwt

#网址
buwei_url1 = "https://jbk.99.com.cn/"
buwei_url2 = ".html"  

#爬取部位信息https://jbk.99.com.cn/部位/
buwei_url=buwei_url1+'buwei/'
try:
    buwei_urlop = urllib.request.urlopen(buwei_url,timeout=100)
except Exception:
    print("超时")
data_buwei=buwei_urlop.read().decode('GBK')#!!!!!原网页编码方式为GBK
#得到部位名称,保存在列表ls_buwei中
link_buwei="<div class=\"part-txt\">\\s*<h3>\\s*<span>\\s*(.*?)</span>"
ls_buwei=[]
patten=re.compile(link_buwei)
ls_buwei=patten.findall(data_buwei)
2.按部位,爬取各部位疾病名称及链接,再爬取疾病具体信息
#新建表格文本
book
  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值