Python3读取HTML文件
在學習《Designing Machine Learning Systems with Python》(中文名《機器學習系統設計——Python語言實現》)一書中,在第三章第二節第五小節(P68)讀取HTML文檔數據的代碼中。我發現有些不太懂,就把學習過程記錄下來。
首先,如果你在python3.6環境中照搬書中的代碼的話,你會得到這樣一個錯誤提示,修改方法可以看我之前的博客。
然后就可以正常運行了。
修改后代碼:
運行結果:
[[1. 1.][2. 2.][3. 3.]] [['whitefly']['thrip']['aphid']]我之所以寫這篇博客的原因是我在學習這個代碼時,發現一些不太明白的地方。主要有兩點,一個是在soup = BeautifulSoup(html, 'lxml') 這行代碼中,BeautifulSoup()函數有兩個輸入,而我常見的都是只有一個輸入,這里的第二個參數我好奇到底是什么;另一個不太清楚的是BeautifulSoup中find()和find_all()之間有什么區別。
第二個問題很好解決,只要在網上搜下查下BeautifulSoup的中文文檔就能明白。find()只返回尋找到的第一個匹配的參數,find_all()則返回文檔中全部匹配的參數。
第一個問題在找到的中文文檔中剛開始沒有找到,后來在頁面的后邊找到了(汗(lll¬ω¬),第一次看的是由多不認真),第二個參數是指定對該文檔的解析器的,可供選擇的解析器有
目前支持, “lxml”, “html5lib”, 和 “html.parser”
這個結果告訴我們看文檔不要不耐煩,要認真。(逃ε=ε=ε=┏(゜ロ゜;)┛)
總結
以上是生活随笔為你收集整理的Python3读取HTML文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python3调用MySQL数据库中的数
- 下一篇: java web前端模版,以Eclips