爬蟲思路——Xpath(douban movie 250)

需求:

豆瓣top250電影:https://movie.douban.com/top250

爬取 電影的名字 評分 引言 詳情頁的url 1-10頁 保存到csv文件當(dāng)中 (下圖綠色框內(nèi)容為所需爬去內(nèi)容)


總體思路把握:

思路分析1a


思路分析上接1a

需求拆解:

需要爬去1-10頁(共計250部電影信息)

存在遍歷每一頁獲得每一頁數(shù)據(jù)的需求


爬取 電影的名字 評分 引言 詳情頁的url

最后我們要得到的是250部電影,每部電影包含的信息是Name, Score, Quote, Links

可以認(rèn)為每一部電影信息就是一個字典:{‘Name’ : '...', 'Score': '...', 'Quote': '...', ‘Links’: '...'}

以字典Key-Value? 形式表示腐芍。

而所有電影信息可以是列表嵌套字典的格式除盏,如下:

[{電影1字典}, {電影2字典},.....,{電影250字典}]


保存到CSV文件中

因為每部電影信息是以字典形式存儲信息的屋吨。

因此可以使用csv.Dictwriter(object, titile) 方法直接寫入字典信息


需求拆解總結(jié):

每部電影信息都是一個字典揭糕,每一個html頁面有25部電影 --> 第一層遍歷后獲取每一頁25部電影的列表: [{該頁第1部電影信息}赚导, {該頁第2部電影信息}, ... , {該頁第25部電影信息}]

然后將這一頁的結(jié)果列表加入到總體結(jié)果列表尚粘,然后遍歷下一頁面 --> 第二層遍歷獲取總共10頁所有信息


分析1-10頁URL地址規(guī)律

對于目標(biāo)URL進(jìn)行分析:

第一頁:https://movie.douban.com/top250

第二頁:https://movie.douban.com/top250?start=25&filter=

第三頁:https://movie.douban.com/top250?start=50&filter=

第四頁:https://movie.douban.com/top250?start=75&filter=

那么反過頭去重新試試第一頁是否也符合規(guī)律:https://movie.douban.com/top250?start=0&filter=

發(fā)現(xiàn)第一頁也是適用的,那么很容易總結(jié)出規(guī)律蝇庭,每一頁25部電影醉鳖,以start = PageNum * 25 作為偏移量,修改URL地址即可

可以使用如下代碼進(jìn)行遍歷url:

base_url = 'https://movie.douban.com/top250?start={}&filter='

for i in range(10):

????req_url =?base_url .format ( i * 25)


分析頁面

鼠標(biāo)右鍵-->檢查哮内,找到所需爬去內(nèi)容在element中的位置盗棵,class='info'

在網(wǎng)頁源代碼中尋宅此標(biāo)簽,并確認(rèn)所有需要爬去的內(nèi)容是否在其中:

每一個網(wǎng)頁北发,25部電影信息纹因,分別在25個 li標(biāo)簽內(nèi):而我們定義的<div class="info"> 存在于每一個 li 子標(biāo)簽下

分級如下:li --> <div class="item"> --> <div class="info">? ? (相同顏色箭頭為同一級兄弟標(biāo)簽關(guān)系,平級)

獲取網(wǎng)頁源代碼

使用requests模塊請求琳拨,并獲取html網(wǎng)頁源代碼并轉(zhuǎn)換成字符串格式

匹配最小父級標(biāo)簽


匹配并列子級標(biāo)簽 & 定義子級標(biāo)簽內(nèi)解析公式(xpath)&遍歷子級獲取需求數(shù)據(jù) (黃色框選內(nèi)容)


遍歷每一頁網(wǎng)頁(1-10頁)


保存數(shù)據(jù)至文檔


完整代碼如下:


執(zhí)行結(jié)果:


用excel打開:

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末瞭恰,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子狱庇,更是在濱河造成了極大的恐慌惊畏,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件密任,死亡現(xiàn)場離奇詭異颜启,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)浪讳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門缰盏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人驻债,你說我怎么就攤上這事乳规。” “怎么了合呐?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵暮的,是天一觀的道長。 經(jīng)常有香客問我淌实,道長冻辩,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任拆祈,我火速辦了婚禮恨闪,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘放坏。我一直安慰自己咙咽,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布淤年。 她就那樣靜靜地躺著钧敞,像睡著了一般蜡豹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上溉苛,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天镜廉,我揣著相機(jī)與錄音,去河邊找鬼愚战。 笑死娇唯,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的寂玲。 我是一名探鬼主播塔插,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼敢茁!你這毒婦竟也來了佑淀?” 一聲冷哼從身側(cè)響起留美,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤彰檬,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后谎砾,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體逢倍,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年较雕,在試婚紗的時候發(fā)現(xiàn)自己被綠了亮蒋。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖润努,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情鳍侣,我是刑警寧澤拱她,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站矗积,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏乍恐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一存璃、第九天 我趴在偏房一處隱蔽的房頂上張望纵东。 院中可真熱鬧男图,春花似錦、人聲如沸难裆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春颤绕,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工憨攒, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留蛛壳,地道東北人捞挥。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓忧吟,卻偏偏與公主長得像砌函,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容