python爬蟲網頁提取器——xpath

xpath簡單來講就是根據網頁的源碼路徑去找你想要的的信息。
例子:html

html='''
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>測試-常規用法</title>
</head>
<body>
<div id="content">
    <ul id="useful">
        <li>這是第一條信息</li>
        <li>這是第二條信息</li>
        <li>這是第三條信息</li>
    </ul>
    <ul id="useless">
        <li>不須要的信息1</li>
        <li>不須要的信息2</li>
        <li>不須要的信息3</li>
    </ul>

    <div id="url">
        <a href="http://jikexueyuan.com">極客學院</a>
        <a href="http://jikexueyuan.com/course/" title="極客學院課程庫">點我打開課程庫</a>
    </div>
</div>

</body>
</html>
'''

設網頁文本如上:
xpath簡單提取方法(chrome的審查元素有xpath的提取方式)chrome

# -*- coding:utf-8 -*-
from lxml import etree#導入xpath
selector=etree.HTML(html, parser=None, base_url=None)

#提取文本
context=selector.xpath('//*[@id="useful"]/li/text()')
for each in context:
    print each
#結果顯示:這是第一條信息
#這是第二條信息
#這是第三條信息




#提取屬性
link=selector.xpath('//*[@id="url"]/a/@href')
for each in link:
    print each
#結果顯示:http://jikexueyuan.com
#http://jikexueyuan.com/course/



#提取標題
title=selector.xpath('//*[@id="url"]/a/@title')
print title[0]
#結果顯示:極客學院課程庫
相關文章
相關標籤/搜索