xpath 常用方法

1.xpath常用匹配:

(1.)//模糊查詢

//div[contains(text(),"history-loadmore") and not(contains(@class, "history-loadmore hide"))]

//div[@class='bookTel']/span[@class='tel']/strong[1][contains(text(),'-')]/text()

(2.)//選取同級(jí)節(jié)點(diǎn)

//div[@class='listpage']/span/following-sibling::a[1]

//div[@class='address-row']/table/tbody/tr[@id='submitTime']/preceding-sibling::tr[1]

(3.)//獲取父級(jí)元素

//div[@class='page-box house-lst-page-box']/parent::div

//div[@class and @id]

//div[@id="myid"]//text()

//div[@class='lp-main-page']/a[@class='page-num '][last()]/text()

(4.)//大于1

a[position()>1]

li[not(@class)]preceding

(5.)? | 可選符 使用|可選取若干個(gè)路徑 如//p | //div

(6.). 點(diǎn) 用來選取當(dāng)前節(jié)點(diǎn)

(7.).. 雙點(diǎn) 選取當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn)

(8.)\w 是 [A-Za-z0-9_]

(9.)\d 是 [0-9]

2.child的用法:

"url_page": {

? ? "seed_urls": {

? ? ? ? "field": "seed_urls",? # 字段名稱

? ? ? ? "depict": "種子url",

? ? ? ? "status": True,? # 是否禁用

? ? ? ? "type": [],? # list? # 字段類型

? ? ? ? "select": "xpath",? # 提取方式

? ? ? ? "deep": False,

? ? ? ? "split": True,

? ? ? ? "regex": "http://div[@class='section']/div",? # 提取規(guī)則

? ? ? ? "child": {

? ? ? ? ? ? "seed_url": {

? ? ? ? ? ? ? ? "field": "seed_url",? # 字段名稱

? ? ? ? ? ? ? ? "depict": "種子url",

? ? ? ? ? ? ? ? "status": True,? # 是否禁用

? ? ? ? ? ? ? ? "type": "",? # list? # 字段類型

? ? ? ? ? ? ? ? "select": "xpath",? # 提取方式

? ? ? ? ? ? ? ? "deep": False,

? ? ? ? ? ? ? ? "split": True,

? ? ? ? ? ? ? ? "regex": "http://h4[@class='house-title']/a/@href",? # 提取規(guī)則

? ? ? ? ? ? ? ? "value_handle": [? # 內(nèi)容處理

? ? ? ? ? ? ? ? ? ? {

? ? ? ? ? ? ? ? ? ? ? ? "name": "urljoin"

? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ],

? ? ? ? ? ? },

? ? ? ? ? ? "house_floor": {

? ? ? ? ? ? ? ? "field": "house_floor",? # 字段名稱

? ? ? ? ? ? ? ? "depict": "所在樓層",

? ? ? ? ? ? ? ? "status": True,? # 是否禁用

? ? ? ? ? ? ? ? "type": "",? # 字段類型

? ? ? ? ? ? ? ? # "separator": "",? # list->str 分隔符 默認(rèn)按","分割

? ? ? ? ? ? ? ? "select": "xpath",? # 提取方式

? ? ? ? ? ? ? ? "deep": False,

? ? ? ? ? ? ? ? "split": True,

? ? ? ? ? ? ? ? "regex": "http://p[@class='house-txt'][1]/text()[2]",? # 提取規(guī)則

? ? ? ? ? ? ? ? "value_handle": [? # 內(nèi)容處理

? ? ? ? ? ? ? ? ],

? ? ? ? ? ? },

? ? ? ? ? ? "thumbnails": {

? ? ? ? ? ? ? ? "field": "thumbnails",? # 字段名稱

? ? ? ? ? ? ? ? "depict": "縮略圖",

? ? ? ? ? ? ? ? "status": True,? # 是否禁用

? ? ? ? ? ? ? ? "type": "",? # list? # 字段類型

? ? ? ? ? ? ? ? "select": "xpath",? # 提取方式//ul[@class='listUl']/li/div[@class='img_list']/a/img/@src

? ? ? ? ? ? ? ? "deep": False,

? ? ? ? ? ? ? ? "split": True,

? ? ? ? ? ? ? ? "regex": "http://img[@class='lazy']/@data-original",? # 提取規(guī)則

? ? ? ? ? ? ? ? "value_handle": [? # 內(nèi)容處理

? ? ? ? ? ? ? ? ],

? ? ? ? ? ? },

? ? ? ? ? ? "house_title": {

? ? ? ? ? ? ? ? "field": "house_title",? # 字段名稱

? ? ? ? ? ? ? ? "depict": "房源標(biāo)題",

? ? ? ? ? ? ? ? "status": True,? # 是否禁用

? ? ? ? ? ? ? ? "type": "",? # list? # 字段類

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,534評(píng)論 19 139
  • 首先重構(gòu)了頁面樣式,布局更加合理。這樣的話也便于我操作①②之間的線。 然后就是刪除了一段固定的塊狀元素,將所有的任...
    yaolei72閱讀 292評(píng)論 0 0
  • HTML基礎(chǔ) 開始 上周我已經(jīng)學(xué)習(xí)了一些開發(fā)工具(Sublim Text、vscode),我學(xué)會(huì)了如何一些基礎(chǔ)設(shè)置...
    H少白閱讀 755評(píng)論 0 4
  • 數(shù)字,英文,中文 cet_add_goods.setInputType(InputType.TYPE_CLASS_...
    吃貨養(yǎng)成記閱讀 693評(píng)論 0 0
  • 琢玉書生閱讀 256評(píng)論 0 1

友情鏈接更多精彩內(nèi)容