下標的用法
(
//table[@class
="normal"
]//tr)[1
]//td
這裡 //table 頁面下任意乙個table 或者說所有table
標籤[@屬性=「屬性值」]//標籤
重點是括號括起來
(標籤[@屬性=「屬性值」]//下級標籤)[ 1 ]
這個 [ 1 ] 就是下標 相當於第乙個
在樣例中是指所有 下級標籤 tr 中的 第乙個 tr
迴圈的寫法/格式
button = response.xpath(
'//div[@id="paging"]//a'
)for i in
range
(len
(button)):
txt =
''.join(button.xpath(
'(//div[@id="paging"]//a)[{}]/text()'
.format
(i+1))
.extract())
.strip(
).encode(
'utf-8'
)
思路為 先寫 button的xpath
根據樣例 這裡迴圈的是 a (要看最後乙個標籤 //a )
len(button) 指乙個長度
range 是乙個範圍 相當於 i 在這個 假設的100 中進行 for迴圈
固定格式range(len(『xpath名』))
response.xpath(
'(//div[@id="paging"]//a)[{}]/text()'
.format
(i+1))
.extract())
button.xpath(
'(//div[@id="paging"]//a)[{}]/text()'
.format
(i+1))
.extract())
button.xpath(
'(//a)[{}]/text()'
.format
(i+1))
.extract(
))
由於之前已經寫定了 button 的 xpath
所以上面3個意義一樣 不影響,重複不影響
(xpath)[{}] 和 format(i+1) 是迴圈中的固定格式
extract strip encode(
'utf-8'
)直接掛在後面用,解決文字/轉碼/空格的問題
Xpath基本用法
my listr tree findnodes as string ul id brand li a class bd 可以利用正規表示式來過濾。程式設計中經常會用到xml,net framework提供了專門對xml進行處理的dll,裡面提供了很多對xml處理的方法,在這裡簡單介紹一下xpath的...
Xpath基本用法
定位地圖 driver.find element by xpath text 地圖 多重定位 driver.find element by xpath text 新聞 and name tj trnews 模糊文字查詢 contains text hao 模糊匹配某個屬性 contains name...
xpath用法詳解
選擇不包含class屬性的節點 result article.xpath span not class 選擇不包含class和id屬性的節點 result article.xpath span not class and not id 選擇不包含class expire 的span result a...