Scrapy爬百度圖檔(一)
本人小白一個,最近初學scrapy,是以邊學邊記錄咯!
Scrapy入門
關于這部分我不能提供更多幫助哈哈哈!參考http://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/overview.html
擷取圖檔URL
要爬取百度圖檔當然要知道圖檔的位址啦!位址怎麼來呢?F12總懂了吧哈哈哈!來吧!我們先上圖吧!這裡已firefox為例,其實chrome也差不多。

作為一個五月天的死忠,怎麼能放棄這個秀偶像的機會呢?這個就是firefox自帶的開發者工具了,大家應該都懂的。那圖檔路徑到底在哪呢?根據經驗來說,一個Ajax異步加載的網站,圖檔的路徑是儲存在json裡的。json是什麼呢?JSON(JavaScript Object Notation, JS 對象标記) 是一種輕量級的資料交換格式。json在哪裡檢視呢?
找到沒?http狀态碼200,響應傳回的是json檔案。讓我們來看看它的位址,消息頭那裡面哦!http://image.baidu.com/search/acjson?tn=resultjson_com&ipn=rj&ct=201326592&is=&fp=result&queryWord=五月天&cl=2&lm=-1&ie=utf-8&oe=utf-8&adpicid=&st=-1&z=&ic=0&word=五月天&s=&se=&tab=&width=&height=&face=0&istype=2&qc=&nc=1&fr=&cg=star&pn=30&rn=30&gsm=1e&1495549541143=
在浏覽器裡打開這個連結位址,我們可以看到這是一個json檔案喲!
那我們要怎麼來處理這些json檔案呢?我們這裡用到的是python的json庫。首先,你要在項目的setting.py裡把ROBOTSTXT—OBEY設定為False。scrapy在爬取網站時,會遵循robots.txt裡的規則,不爬取它禁止的特定内容。當你把它設定為False時,爬蟲會不遵循這個準則。那我們來利用spider的調試器來解析一下json。我們在指令行輸入”scrapy shell ” 就是剛才那個json位址。下面就是調試結果,高亮部分就是圖檔位址。
我再提取出key=thumbURL的部分
好了,第一部分内容就講到這了,我們已經可以提取出圖檔的URL了。請大家敬請期待下一部分哦!