beautiful soup是的乙個庫,最主要的功能是從網頁抓取資料。有了它我們可以很方便地提取出html或xml標籤中的內容
我本地安裝的是python2.7,安裝時自動安裝了pip,在命令列直接輸入
pip install beautifulsoup4 即可,推薦安裝beautifulsoup4版本,安裝好後可以在python環境下輸入 from bs4 import beautifulsoup 測試是否安裝成功,沒有報錯即成功。
各解析模式解析結果
beautifulsoup("
p>", "html.parser")
# a>
beautifulsoup("
p>", "html5lib")
# head>
p>
a>
body>
html>
beautifulsoup("
p>", "lxml")
# a>
body>
html>
beautifulsoup("
a>", "xml")
# <?xml version="1.0" encoding="utf-8"?>
# a>
beautiful soup將複雜html文件轉換成乙個複雜的樹形結構,每個節點都是python物件,所有物件可以歸納為4種:
tag:標籤,有name和attr屬性
只返回首個找到的元素內容
soup.a
soup.p.attrs
soup.p.name
soup.p.get('class')
soup.p['class']
soup.p.string
返回所有匹配的節點內容
soup.p.contents
soup.head.children
soup.descendants
soup.strings
soup.stripped_strings
查詢 返回列表型別
soup.find_all(href=re.compile("elsi"),id='link1')
soup.find_all("a",class_="sister",limit = 2, recursive = false)
soup.find_all(attrs=)
soup.find_all(text=re.compile('dormouse'))
css方式查詢
soup.select('title') # 按標籤名查詢
soup.select('p #link1') #p標籤裡id=link1的物件
soup.select('p a[href=""]') #同一節點中間沒有空格如a[href=''] 屬性用括起來
soup.select('.transaction li')# 不在同一節點中間用空格
soup.select('.content li')
參考鏈結 PyThon第三方庫
本文 自 戀花蝶的部落格 今天公司停電,沒上班。跑上來更新個部落格,跟大家分享一下我常用的幾個第三方 python 庫。python 語言之所以能夠如此流行,除了本身內建許多程式庫來保障快速開發之外,目不睱接的第三方庫也是一大主因。結合我目前的工作 網遊開發 我常用的幾個第三方庫如下 wxpytho...
python 第三方庫
requests 模組 具體詳見 requests 是用python語言編寫的第三方庫,基於 urllib,採用 apache2 licensed 開源協議的 http 庫。它比 urllib 更加方便,完全滿足 http 測試需求,多用於介面測試 常用介面 1.requests.request m...
python第三方庫
網路爬蟲是自動進行http訪問並獲取html頁面的程式。常用的python網路爬蟲庫 一 requests requests庫是乙個簡潔且簡單的處理http請求的第三方庫,它的最大優點是程式編寫過程更接近正常url訪問 過程。這個庫建立在python語言的urllib3庫基礎上。request庫支援...