您的位置:首頁技術文章
文章詳情頁

python - BeautifulSoup指定lxml作為解析器報錯?

瀏覽:87日期:2022-09-01 08:34:14

問題描述

環境: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')

結果出現了這樣的報錯:

python - BeautifulSoup指定lxml作為解析器報錯?

在Google搜了下,都是說要導入路徑,但是在 Settings -> Project -> Project Interpreter 里是這樣的

python - BeautifulSoup指定lxml作為解析器報錯?

顯示BeautifulSoup已經導入了

請問我要怎么做才能解決這個問題呢?

萬分感謝!

問題解答

回答1:

找了其他人的代碼看,終于知道是什么問題

并不是路徑的問題,而是傳參的問題

markup 其實是要解析的內容,例如:

soup = BeautifulSoup('<html>data</html>', 'lxml')

或者

markup = '<html>data</html>'soup = BeautifulSoup(markup, 'lxml')

PS. 在文檔中沒有函數參數列表之類的,不知道是不是找的位置錯了...

回答2:

pip install lxml

標簽: Python 編程
相關文章:
国产综合久久一区二区三区