用beautifulsoup处理非格式html的简单scrapy中间件

scrapy-beautifulsoup的Python项目详细描述


PyPI versionRequirements Status

刮花美容组

用beautifulsoup处理非格式html的简单scrapy中间件

安装

包位于pypi上,可以使用pip

安装
pip install scrapy-beautifulsoup

配置

将中间件添加到DOWNLOADER_MIDDLEWARES字典设置:

DOWNLOADER_MIDDLEWARES = {
    'scrapy_beautifulsoup.middleware.BeautifulSoupMiddleware': 400
}

默认情况下,BeautifulSoup将使用内置的html.parser解析器。要更改它,请设置BEAUTIFULSOUP_PARSER设置:

BEAUTIFULSOUP_PARSER = "html5lib"  # or BEAUTIFULSOUP_PARSER = "lxml"

html5lib是一个极为宽松的解析器,如果目标html严重损坏,您可以考虑将其作为您的首选。 注意:在这种情况下,html5lib必须安装:

pip install html5lib

动机

BeautifulSoup本身在underlying parser of choice的帮助下处理格式不正确或损坏的html的工作相当出色。 在某些情况下,通过BeautifulSoup来“修复”html是有意义的。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
空字符串检查在java中未按预期工作   JavaSpringWebClient:自动计算主体的HMAC签名并将其作为头传递   foreach是否有一个Java等效的foreach循环和一个引用变量?   java如何在Eclipse中导入jar   使用特定第三方或java时lombok触发错误。*方法或构造函数   安卓 java将对象数组转换为int数组   java使一定百分比的JUnit测试通过   java Android:将Seekbar的一个值与另一个值进行比较   java将int数组(图像数据)写入文件的最佳方式是什么   java取代了系统。yml的构造函数内的getProperty   sqlite Java将公钥和私钥转换为字符串,然后再转换回字符串   安卓获取白色像素并将其保存到java opencv中的数组中   java为什么是ServerSocket。setSocketFactory静态?   Java数组似乎在不直接修改的情况下更改值