Python:BeautifulSoup解析HTML,导致部分html源码丢失

 保佑欣疼你的芯疼 发布于 2022-11-01 18:20

在处理下载网页的时候,有时候会碰到一些奇葩的网页,在使用beautifulsoup解析的时候,会修改原来的html源码,导致下载的网页不完整。
比如:

from bs4 import BeautifulSoup
html="""

12

12

""" soup = BeautifulSoup(html) print str(soup)

结果:

12


我的本意是先使用BeautifulSoup先对源代码进行解析处理,之后在保存html源码到本地。
而上面的例子,很明显就改变了网页源码了,导致下载的网页不全。


目前的解决办法
html = re.sub("","",html,flags=re.S|re.IGNORECASE)+""
这样就能够“正常”解析了

1 个回答
  • 个人感觉有两种方案,第一就是自己用正则来判断抓取网页中有没有多个html标签,有的话自行进行分割成两个小的页面进行解析。第二个方案直接当成xml来解析。

    2022-11-02 19:52 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有