好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Scrapy元素選擇器Xpath用法匯總

Scrapy元素選擇器Xpath用法匯總

熱門標簽:清遠360地圖標注方法 400電話申請服務商選什么 西藏智能外呼系統五星服務 工廠智能電話機器人 千陽自動外呼系統 平頂山外呼系統免費 江蘇客服外呼系統廠家 在哪里辦理400電話號碼 原裝電話機器人

 眾所周知,在設計爬蟲時,最麻煩的一步就是對網頁元素進行分析,目前流行的網頁元素獲取的工具有BeautifulSoup,lxml等,而據我使用的體驗而言,Scrapy的元素選擇器Xpath(結合正則表達式)是其中較為出色的一種(個人認為最好啦,當然只能在Scrapy中使用)功能相對較全、使用較為方便,正因為它的豐富性,有時很多功能會忘記,所以在這里整理好記錄下來,方便今后查閱使用。

1. 元素的多級定位與跳級定位

多級定位:依靠html中的多級元素逐步縮小范圍

response.xpath('//table/tbody/tr/td')

//如果知道元素所屬的下標可以用下標選擇
response.xpath('//table/tbody/tr[1]/td')

跳級定位:符號“//”表示跳級定位,即對當前元素的所有層數的子元素(不僅是第一層子元素)進行查找,一般xpath的開頭都是跳級定位

response.xpath('//span//table')

2. 依靠元素的屬性定位

每個html元素都有很多屬性,如id、class、title、href、text(href和text往往可以配合正則表達式)等,這些屬性往往具有很強的特殊性,結合元素多級定位或跳級定位會更準確高效,下面舉幾個典型的例子,其他的舉一反三

利用class定位

response.xpath('//td[@class="mc_content"]')

利用href配合正則表達式定位

response.xpath('//a[re:test(@href,"^\/index\.php\&;m=Newsa=detailsid=1NewsId=\d{1,4}")]')

利用text結合正則表達式定位

a=response.xpath('//a[re:test(text(),"\w{4}")]')

此外,xpath還有對于html元素操作的兩個實用的函數(可以用正則表達式代替)——starts-with和contains;

a=response.xpath('//a[starts-with(@title,"注冊時間")]')

a=response.xpath('//a[contains(text(),"聞")]')

3. 提取元素或元素的屬性值

首先是最基本的extract()函數,提取被定為的元素對象

a=response.xpath('//a[contains(text(),"聞")]').extract()

//如果被定為的元素對象有多個,可以有用下標指定
a=response.xpath('//a[contains(text(),"聞")]').extract()[1]

提取元素的屬性

//提取text
a=response.xpath('//a[contains(text(),"聞")]/text()').extract()

//獲取href
a=response.xpath('//a[contains(text(),"聞")]/@href').extract()

//獲取name
a=response.xpath('//a[contains(text(),"聞")]/@name').extract()

此時我們的正則表達式又閑不住了(scrapy自帶的函數),可以對提取的元素進行選擇

//對href中的部分字符串進行選擇
response.xpath('//a[@name="_l_p_n"]/@href').re('\/s.*?list\.htm')

在這里關于xpath的所有用法基本總結完畢,只是由于xpath是對靜態元素進行匹配選擇,對于javascript往往束手無策,這時不得不用一個自動化測試工具——selenium,可以實現各種動態事件和靜態元素的選擇,只是selenium往往比較吃內存,響應時間也比較慢,對于大型的爬蟲任務盡量不要使用,畢竟有一些javascript元素是內嵌在網頁代碼中的,這時候結合萬能的正則表達式,xpath往往能夠實現。如下:

link = re.search("javascript:goToPage\('(.*?)'", value) //value為包含該段的字符串

到此這篇關于Scrapy元素選擇器Xpath用法匯總的文章就介紹到這了,更多相關Scrapy元素選擇器Xpath 內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python基于scrapy爬取京東筆記本電腦數據并進行簡單處理和分析
  • Django結合使用Scrapy爬取數據入庫的方法示例
  • python實現Scrapy爬取網易新聞
  • python爬蟲scrapy框架之增量式爬蟲的示例代碼
  • 一文讀懂python Scrapy爬蟲框架
  • Scrapy實現模擬登錄的示例代碼
  • Python爬蟲之教你利用Scrapy爬取圖片

標簽:白城 日照 隨州 安慶 股票 錦州 天水 西安

巨人網絡通訊聲明:本文標題《Scrapy元素選擇器Xpath用法匯總》,本文關鍵詞  Scrapy,元素,選擇器,Xpath,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Scrapy元素選擇器Xpath用法匯總》相關的同類信息!
  • 本頁收集關于Scrapy元素選擇器Xpath用法匯總的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 翁熄系列回乡下| 揉我奶头?啊?嗯高潮gif| 免费??成人??用黄上黄两年半| 国产一级a毛一a毛免费视频| 玖操网| 久操免费视频| 国产一级毛片在线| 风间由美一区二区AV101| 丈母娘女婿| 日日麻批40分钟免费播放| 女子被粗大的??巴捣出白浆| 女厕真实偷拍撒尿KTV| 公交车上荫蒂添的好舒服口述视频| 啊v天堂网| 久久夜夜做天天爽国产乱辈| 国产一区二区美女无遮挡視頻| 动漫美女被吸乳羞羞小说| 嗯啊好舒服| 日日躁狠狠躁夜夜躁A片图片| 色中色app| 日本黄A三级三级三级| 我的美艳师娘| 91精品国产综合aV| 99热九九这里只有精品10| 一色桃子av人妻中文字幕| 亚洲色www永久网站波多野结衣| 一夜未拔H圆房~h| 亚洲熟妇自偷自拍另| 耽美憋尿| 8x8x海外华人永久免费视频| 外国人又粗又大的H文| 日久成瘾1v1糙汉焉淇枝余烬| 波多野结衣33| 免费看电影伦理片| 丰满的寡妇hd高清在线观看| 655fun.黑料热点事件-黑料不打| 黑帮大佬和我的365天未删减| 亚洲中文字幕久久久| 男生肌肌插女生肌肌| 亚州AⅤ乱码精品成人区| 男人天堂日韩|