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. [python2]local variable referenced before assignment問題2. 求救一下,用新版的phpstudy,數據庫過段時間會消失是什么情況?3. mysql - 如何在有自增id的情況下,讓其他某些字段能不重復插入4. python小白,關于函數問題5. django - Python error: [Errno 99] Cannot assign requested address6. Python2中code.co_kwonlyargcount的等效寫法7. java - 線上應用,如果數據庫操作失敗的話應該如何處理?8. node.js - win 下 npm install 遇到了如下錯誤 會導致 無法 run dev么?9. python小白 關于類里面的方法獲取變量失敗的問題10. angular.js - 百度支持_escaped_fragment_嗎?
