Python爬蟲群作業-Week3-XPath

加入爬蟲群第三周,這周的作業是:
008 - 爬蟲處理流程及網頁解析
009 - 使用XPath解析網頁
010 - 使用BeautifulSoup和XPath抓取結構化數據

基本上就是用XPath和BeautifulSoup爬取數據。向右老師肯定不是想我們照著做一遍就好,但他肯定沒想到有人連照著做一遍也有難度。


遇到的坑1是安裝幾個包,requests和lxml,這兩個包是爬蟲必須的,所以繞也繞不過去。簡而言之,有至少三種安裝方式

  1. 確定Python有裝pip,pip是管理包的工具,然后運行:pip install requests。
    把我的錯誤回溯,應該是以下步驟:
    <blockquote>確認安裝python同時也有安裝pip.exe。我的是在python/Scirpts目錄下,如果沒有安裝要重新卸載再安裝python;
    在計算機-高級設置處,變量環境的Path處加入D:/python/Scripts這個路徑,(具體路徑根據個人不同)
    在cmd處進入到Scripts目錄下,然后運行pip install requests

  2. 下載whl文件,然后安裝whl文件(這個只是百度到做法,但是沒有嘗試)

  3. pip和requests包折騰了周二周三兩個晚上,正好也特別累,就隨便看看書和視頻,然后到了lmxl包,也是線程的問題死活下不來,周四試完,周五沒再試,周六繼續,還嘗試下lxml-3.7.2.tgz文件解壓,最后程工看不下去直接扔給了我一個lmxl.exe包,然后就突然解放了....
    以上就是我這周的功課....


為了不辜負大神的幫助,爬起來補作業...
向右老師這周刷了好幾篇帖子,然后我就糊涂了,先看了009,做了一半發現其實還有008,但反正008和010也沒看懂,就還是繼續按照009做下去了
主要就是XPath的爬取方法。向右老師用了糗事百科做例子:


裝好requests和lxml包以后,按照向右老師的代碼,很快就爬出來了。

其實我比較不明白的是@id替換成@class="article block untagged mb15"這個做法,就算是大神講了以后也還是不明白,只感覺是一種語法...
(大神說可以從w3school看Xpath語法,不過那里好像沒有講這個)

1099477170.jpg

然后我就想實踐的運用一下,爬煎蛋網的段子:(我平日里沒有這些愛好!)
學到招數一:如果代碼很長又無法輸入文字搜索,在google chrome中打開開發者工具,點擊左上角的小箭頭,就能找到鼠標指向的段落的代碼。

webwxgetmsgimg.jpg

然后,用右鍵copy as Xpath看到代碼,發現煎蛋網的段子代碼很怪:

//*[@id="comment-3443278"]/div[1]/div/div[2]/p

作為沒有其他辦法的小白,我當然就簡單的加上@class="article block untagged mb15",當然也很直接的失敗了。
然后經過各種大神們的生拉硬拽,自己嘗試各種排列組合,后來發現以下方法可行(不一定是最正確的方法:)

import requests
from lxml import etree

html=requests.get('http://jandan.net/duan').text
selector = etree.HTML(html)

content = selector.xpath('//div[@class="row"]/div[2]/p/text()')

for each in content:
    print (each)

或者這樣寫也可以:

content = selector.xpath('//div[@class="row"]//p/text()')

但是只能爬一條,可能還是要加循環遍歷才行。


看回上圖,重點還是要理解網頁結構。要一層一層的找,從最上的<div>定位。
前路漫漫啊,這周其實把SQL和beautifulsoup都略過了,下周再繼續補作業....
謝謝老師和各位大神指導。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,619評論 6 539
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,155評論 3 425
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,635評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,539評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,255評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,646評論 1 326
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,655評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,838評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,399評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,146評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,338評論 1 372
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,893評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,565評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,983評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,257評論 1 292
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,059評論 3 397
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,296評論 2 376

推薦閱讀更多精彩內容