python - BeautifulSoup指定lxml作为解析器报错?
问题描述
环境:windows 10PyCharm 2016.3.2
遇到问题:
刚开始学python,想用BeautifulSoup解析网页,但出现报错:
UserWarning: No parser was explicitly specified, so I’m using the best available HTML parser for this system ('lxml'). This usually isn’t a problem, but if you run this code on another system, or in a different virtual environment, it may use a different parser and behave differently.The code that caused this warning is on line 4 of the file C:/Users/excalibur/PycharmProjects/learn/getMyIP.py. To get rid of this warning, change code that looks like this: BeautifulSoup([your markup])to this: BeautifulSoup([your markup], 'lxml') markup_type=markup_type))
然后根据提示和官网的文档加上:BeautifulSoup(markup, 'html.parser')
结果出现了这样的报错:
在Google搜了下,都是说要导入路径,但是在 Settings -> Project -> Project Interpreter 里是这样的
显示BeautifulSoup已经导入了
请问我要怎么做才能解决这个问题呢?
万分感谢!
问题解答
回答1:找了其他人的代码看,终于知道是什么问题
并不是路径的问题,而是传参的问题
markup 其实是要解析的内容,例如:
soup = BeautifulSoup('<html>data</html>', 'lxml')
或者
markup = '<html>data</html>'soup = BeautifulSoup(markup, 'lxml')
PS. 在文档中没有函数参数列表之类的,不知道是不是找的位置错了...
回答2:pip install lxml
相关文章:
1. javascript - vue生成一维码?求助!!!!!急2. javascript - 关于Js中 this的一道题3. javascript - H5页面怎么查看console信息?4. 网页爬虫 - Python:爬虫的中文编码问题?5. ubuntu 远程管理KVM设置问题6. 关docker hub上有些镜像的tag被标记““This image has vulnerabilities””7. css - 手机页面在安卓和苹果浏览器显示不同的小小问题8. javascript - 修改表单多选项时和后台同事配合的问题。9. 如何判断数据库的库和表是否存在?10. browsersync检测的静态页面只能用index.html命名,用demo.html就不能实时同步,检测动态页面的时候,比如wamp环境下,用browsersync能打开页面,但不能实现同步
