Scrapy中怎么利用Xpath選擇器從網頁中采集目標數據,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
創新互聯公司專注于托里網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供托里營銷型網站建設,托里網站制作、托里網頁設計、托里網站官網定制、成都微信小程序服務,打造托里網絡公司原創品牌,更為您提供托里網站排名全網營銷落地服務。
/具體實現/
1、針對標題,在上篇文章中就有提及,其Xpath表達式有多種,任選其一即可,在scrapy shell腳本下進行調試,得到標題的提取方式,并寫入到爬蟲主體文件中。
2、接下來是發布日期的提取,仍然是以交互式的方式實現網頁與源碼之間的交互,如下圖所示。
3、而且標簽“entry-meta-hide-on-mobile”具有全局唯一性,可以很方便的定位到元素。
4、根據網頁結構,我們可輕易的寫出發布日期的Xpath表達式,可以在scrapy shell中先進行測試,再將選擇器表達式寫入爬蟲文件中,詳情如下圖所示。
這里有部分雜質信息,需要利用strip()和replace()函數剔除多余的雜質,還日期一個“清白”。
5、關于文章主題標簽的Xpath表達式,可以看到其在網頁結構上處于日期的下方,如下圖所示。
因此可以通過更改一下發布日期的Xpath表達式,即可獲取到文章主題標簽。
6、文章主題標簽處于a標簽下,如下圖所示。
獲取到整個列表之后,利用join函數將數組中的元素以逗號連接生成一個新的字符串叫tags,然后寫入Scrapy爬蟲文件中去。
7、對于點贊數,其分析方法同之前一致,找到唯一的一個標簽“vote-post-up”即可定位到數據。
8、細心的小伙伴可能會看到“vote-post-up”屬性并不是class標簽中唯一一個屬性,所以一開始的Xpath表達式匹配的內容為空。
這里給大家安利一個小技巧,如果標簽中存在多個屬性,且屬性是唯一的時候,可以利用contains函數進行助攻,其用法是'//span[contains(@class,"vote-post-up"),務必要多加練習,否則容易忘記。根據網頁結構寫出Xpath表達式,調試的過程如下圖所示。
取出的點贊數是個字符串,需要利用int()將其強制轉換為數字。
看完上述內容,你們掌握Scrapy中怎么利用Xpath選擇器從網頁中采集目標數據的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!
分享標題:Scrapy中怎么利用Xpath選擇器從網頁中采集目標數據
鏈接URL:http://m.2m8n56k.cn/article4/gpoeoe.html
成都網站建設公司_創新互聯,為您提供網站改版、外貿網站建設、App設計、、做網站、網頁設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯