python爬蟲學習 xpath

2021-10-25 05:31:34 字數 2599 閱讀 3121

1.例項化乙個etree的物件,且需要將被解析的頁面原始碼資料載入到該物件中。

2.呼叫etree物件中的xpath方法結合著xpath表示式實現標籤的定位和內容的捕獲。pip install lxml1.將本地的html文件中的原始碼資料載入etree物件中:

etree.parse(filepath)

etree.html(page_text)/:表示的是從根節點開始定位,表示的是乙個層級。

//:表示的是多個層級,可以表示從任意位置開始定位。

屬性定位://div[@class=『song』]

索引定位://div[@class=「song」]/p[3] 這裡的索引是從1開始。

取文字:

/text() 獲取的是標籤中直系的文字內容

//text() 獲取的是標籤中非直系的文字內容(所有文字內容)

取屬性:

//div[@class=『song』]/img/@src

import requests

from lxml import etree

url =

''headers =

page_text = requests.get(url=url, headers=headers)

.text

# print(page_text)

tree = etree.html(page_text)

li_list = tree.xpath(

'//ul[@class="house-list-wrap"]/li'

)fp =

open

('58.txt'

,'w'

, encoding=

'utf-8'

)for li in li_list:

title = li.xpath(

'./div[2]/h2/a/text()')[

0]href = li.xpath(

'./div[2]/h2/a/@href')[

0]price_sum = li.xpath(

'./div[3]/p[@class="sum"]//text()')[

0]price_unit = li.xpath(

'./div[3]/p[@class="unit"]//text()')[

0]# 將結果寫入到txt文件

fp.write(

'\r'

+'房屋介紹:'

+title+

'\n'

++href+

'\n'

+'房屋單價:'

+price_unit+

'\n'

+'房屋總價:'

+price_sum+

'萬'+

'\n'

)print

('爬取結束'

)

import requests

from lxml import etree

import os

headers =

# 實現分頁操作

for page in

range(2

,4):

page =

str(page)

url =

''+'index_'

+page+

'.html'

# print(url)

# 解析資料

page_text = requests.get(url=url, headers=headers)

.text

tree = etree.html(page_text)

li_list = tree.xpath(

'//ul[@class="clearfix"]/li'

)# 建立儲存路徑

# 亂碼處理

img_name = img_name.encode(

'iso-8859-1'

).decode(

'gbk'

)# print(img_name,img_src)

# 持久化儲存

img_data = requests.get(url=img_src, headers=headers)

.content

img_path =

'piclibs/'

+ img_name

with

open

(img_path,

'wb'

)as fp:

fp.write(img_data)

print

(img_name,

)

python爬蟲XPath學習

xpath簡介和基本使用 1.前言 之前爬蟲的時候沒有用過xpath,就是沒用過lxml這個包,遇到json格式網頁我用的json.loads html格式用的beautifulsoup裡面有find和find all函式查詢標籤之類的。但是xpath在爬蟲裡面也算乙個比較重要的工具,當然要學習啦。...

爬蟲 xpath學習

xpath解析 最常用且最便捷高效的一種解析方式,具有通用性 xpath解析的原理 一 例項化乙個etree物件,且需要將被解析的頁面原始碼資料載入到該物件中 二 呼叫etree物件中的xpath方法結合著xpath表示式實現標籤定位和內容的捕獲 環境的安裝 pip install lxml 如何例...

爬蟲xpath學習

xpath是在xml文件中搜尋內容的一門語言 html是xml的子集 xml 1野花遍地 1.23 臭 腐周 強 周芷若周杰倫 蔡依林惹了 胖胖陳胖胖不陳 from lxml import etree tree etree.xml xml result tree.xpath book name 表示...