python中用beautifulSoup 安裝
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow
也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!
安裝 Beautiful Soup¶
如果你用的是新版的Debain或ubuntu,那麼可以通過系統的軟體包管理來安裝:
$ apt-get install Python-bs4
Beautiful Soup 4 通過PyPi釋出,所以如果你無法使用系統包管理安裝,那麼也可以通過 easy_install 或 pip 來安裝.包的名字是beautifulsoup4 ,這個包相容Python2和Python3.
$ easy_install beautifulsoup4
$ pip install beautifulsoup4
(在PyPi中還有一個名字是 BeautifulSoup 的包,但那可能不是你想要的,那是 Beautiful Soup3
如果你沒有安裝 easy_install 或 pip ,那你也可以 下載BS4的原始碼 ,然後通過setup.py來安裝.
$ Python setup.py install
如果上述安裝方法都行不通,Beautiful Soup的釋出協議允許你將BS4的程式碼打包在你的專案中,這樣無須安裝即可使用.
作者在Python2.7和Python3.2的版本下開發Beautiful Soup, 理論上Beautiful Soup應該在所有當前的Python版本中正常工作
安裝解析器¶
Beautiful Soup支援Python標準庫中的HTML解析器,還支援一些第三方的解析器,其中一個是 lxml .根據作業系統不同,可以選擇下列方法來安裝lxml:
$ apt-get install Python-lxml
$ easy_install lxml
$ pip install lxml
另一個可供選擇的解析器是純Python實現的 html5lib , html5lib的解析方式與瀏覽器相同,可以選擇下列方法來安裝html5lib:
$ apt-get install Python-html5lib
$ easy_install html5lib
$ pip install html5lib
解析一般的網頁(html),直接:
from bs4 import BeautifulSoup,BeautifulStoneSoup
import urllib2
import html5lib
url_header = "xxxxxx"
Webpage = urllib2.urlopen(url_header).read()
soup = BeautifulSoup(webpage)
print soup.prettify( )
但是在解析shtml的網頁的時候,beautifulsoup模組支援的直譯器有lxml,html5lib和HTMLparse三種,只有html5lib支援解析shtml,所以在生成beautifulsoup物件的時候,要加上一個引數:soup = BeautifulSoup(Webpage,"html5lib"),不然的話,當解析shtml頁面的時候,<body> </body>標籤裡面的內容是無法解析的。
更多詳情請參考:BeautifulSoup 4.2.0官方檔http://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html