爬虫处理网站的bug---小于号未转化为实体符

1.发现BUG

  爬取 chinadrugtrials 详情页的公示的试验信息时候, 发现程序在某些地方跑断掉了,如下:

  爬虫处理网站的bug---小于号未转化为实体符_第1张图片

 

 经排查发现,原来这是网页的bug-----极少数详情页面的某些文字中的小于号,未转化为实体符,连接上后面的 ul 或者a(大写也是), 成了类似标签的东西,

导致bs4 解析时候把它当成了标签的起始尖括号,自动补全了

 

BUG简化如下:

爬虫处理网站的bug---小于号未转化为实体符_第2张图片

输出:

爬虫处理网站的bug---小于号未转化为实体符_第3张图片

 

 

2.解决思路:

  因为要用bs4结构化解析页面,不能用正则统一替换小于号(正常标签也会改变),而且情况比较少,所以可以在用 Beautifulsoup解析前,将未转化的小于号转化为实体符 < 

代码更改如下:

爬虫处理网站的bug---小于号未转化为实体符_第4张图片

 

3.HTML 中有用的字符实体

爬虫处理网站的bug---小于号未转化为实体符_第5张图片

 

 

 

你可能感兴趣的:(爬虫处理网站的bug---小于号未转化为实体符)