環境:python2.7
安裝lxml子產品
1
<code>pip </code><code>install</code> <code>lxml</code>
例子:
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<code>from</code> <code>lxml </code><code>import</code> <code>etree</code>
<code>text </code><code>=</code> <code>'''</code>
<code><div></code>
<code> </code><code><ul></code>
<code> </code><code><li class="item-0"><a href="link1.html">first item</a></li></code>
<code> </code><code><li class="item-1"><a href="link2.html">second item</a></li></code>
<code> </code><code><li class="item-inactive"><a href="link3.html">third item</a></li></code>
<code> </code><code><li class="item-1"><a href="link4.html">fourth item</a></li></code>
<code> </code><code><li class="item-0"><a href="link5.html">fifth item</a></code>
<code> </code><code></ul></code>
<code> </code><code></div></code>
<code>'''</code>
<code>html </code><code>=</code> <code>etree.HTML(text) </code><code>#這是一個位址</code>
<code>result </code><code>=</code> <code>etree.tostring(html) </code><code>#讀出來源碼,并且補全,如輸出的《body》标簽</code>
<code>print</code><code>(result)</code>
輸出:
<code><</code><code>html</code><code>></code>
<code> </code><code><</code><code>body</code><code>></code>
<code> </code><code><</code><code>div</code><code>> </code>
<code> </code><code><</code><code>ul</code><code>> </code>
<code> </code><code><</code><code>li</code> <code>class</code><code>=</code><code>"item-0"</code><code>><</code><code>a</code> <code>href</code><code>=</code><code>"link1.html"</code><code>>first item</</code><code>a</code><code>></</code><code>li</code><code>></code>
<code> </code><code><</code><code>li</code> <code>class</code><code>=</code><code>"item-1"</code><code>><</code><code>a</code> <code>href</code><code>=</code><code>"link2.html"</code><code>>second item</</code><code>a</code><code>></</code><code>li</code><code>></code>
<code> </code><code><</code><code>li</code> <code>class</code><code>=</code><code>"item-inactive"</code><code>><</code><code>a</code> <code>href</code><code>=</code><code>"link3.html"</code><code>>third item</</code><code>a</code><code>></</code><code>li</code><code>> </code>
<code> </code><code><</code><code>li</code> <code>class</code><code>=</code><code>"item-1"</code><code>><</code><code>a</code> <code>href</code><code>=</code><code>"link4.html"</code><code>>fourth item</</code><code>a</code><code>></</code><code>li</code><code>> </code>
<code> </code><code><</code><code>li</code> <code>class</code><code>=</code><code>"item-0"</code><code>><</code><code>a</code> <code>href</code><code>=</code><code>"link5.html"</code><code>>fifth item</</code><code>a</code><code>></</code><code>li</code><code>></code>
<code> </code><code></</code><code>ul</code><code>> </code>
<code> </code><code></</code><code>div</code><code>> </code>
<code> </code><code></</code><code>body</code><code>></code>
<code> </code><code></</code><code>html</code><code>></code>
<code>#讀取檔案裡的内容</code>
<code>html </code><code>=</code> <code>etree.parse(</code><code>'hello.html'</code><code>)</code>
<code>result </code><code>=</code> <code>etree.tostring(html, pretty_print</code><code>=</code><code>True</code><code>)</code>
擷取li标簽裡的東西
html = etree.parse('hello.html')
print type(html)
result = html.xpath('//li')
print result
print len(result)
print type(result)
print type(result[0])
說明:此篇部落格僅僅是為了自己學習lxml子產品,故沒好好寫,下面是我微信二維碼
<a href="https://s3.51cto.com/oss/201710/26/2852890398f48fee0c11bb77eaaf87da.jpg" target="_blank"></a>
本文轉自 天道酬勤VIP 51CTO部落格,原文連結:http://blog.51cto.com/tdcqvip/1976612