使用python获取微医数据

用到的包:

  • BeautifulSoup
  • pymysql
  • requests
  • json

碰到的问题:

1.医生查询分页数据不能超过38页,超过无法返回数据

2.某些字段对应的html元素包含一些无效的class,导致通过BeautifulSoup获取不到该字段

3.按地区搜索医院列表的分页数据不能超过100页,超过返回的重复数据,导致需要手工删除hospital,department两张表code重复的记录

4.一个医生可能出现在多个科室,所以按科室获取医生列表并插入数据库时需要判断重复

5.按地区查找医院时,香港、澳门两个城市的地区查出来的是广东的医院,导致产生大量重复的医院,需要手工删除

6.患者评论数据分页数据  需要获取签名+时间戳才能取到下一页数据,并且未登录只能获取前5页数据,要获取所有数据需要登陆, 登陆以后最多能取60页数据

7.登陆页面需要滑动验证,如果不想花时间研究登陆,可以直接在浏览器中登陆一个微医账户,然后把登陆后的cookie保存下来传给request请求

附代码:https://github.com/xienb/weiyi.git

原文地址:https://www.cnblogs.com/xienb/p/11328483.html