scrapy實(shí)戰(zhàn)之爬取表情包

前言:在之前我們學(xué)習(xí)了scrapy框架的基本使用柒傻,今天我們通過實(shí)戰(zhàn)(爬取http://www.doutula.com的套圖)來更加了解scrapy框架額使用,僅以此來告別我們的爬蟲入門科贬,后續(xù)會有一些反爬,驗(yàn)證碼識別扬舒,數(shù)據(jù)分析的文章毕籽。下次我們就從基礎(chǔ)開始學(xué)習(xí)python,中間也有可能會穿插一些有趣的東西拓颓。來幫助我們學(xué)習(xí)python语婴。

一、爬取表情包思路(http://www.doutula.com)

1驶睦、打開網(wǎng)站砰左,點(diǎn)擊最新套圖

2、之后我們可以看到?jīng)]有套圖场航,我們需要提取每個(gè)套圖的連接

3缠导、獲取連接之后,進(jìn)入頁面提取圖片就好了

4溉痢、我們可以發(fā)現(xiàn)該網(wǎng)站還穿插有廣告僻造,我們需要過濾點(diǎn)廣告

二憋他、實(shí)戰(zhàn)

關(guān)于新建項(xiàng)目我們就不再多說了。不知道的可以看看這篇文章:scrapy的基本使用

1髓削、首先我們提取第一頁的url

通過上圖我們可以發(fā)現(xiàn)我們想要的url全在class名為col-sm-9的div下举瑰,

紅色框的部分為廣告。不是a標(biāo)簽蔬螟,所以我們就不用過濾了此迅。我們直接選取col-sm-9下的直接子節(jié)點(diǎn)即可

寫下如下代碼:

值得注意的是在settings.py中需要添加頭信息和將robots.txt協(xié)議修改為False

我們打上斷點(diǎn)調(diào)試一下:

我們發(fā)現(xiàn)我們想要的信息已經(jīng)提取出來了。

注意:在Request中的mate參數(shù)旧巾,是用來傳遞參數(shù)的耸序,傳遞給下一個(gè)方法使用。使用方法和字典相似鲁猩。

2坎怪、完善item

我們只需要三個(gè)字段,什么系列廓握,圖片url搅窿,圖片名稱。

3隙券、提取item中我們需要的字段

4男应、下一頁

5、保存

因?yàn)閷crapy保存圖片沒有研究娱仔,所以就自己寫保存圖片的方法沐飘。

在pipelines.py種添加如下代碼:

并且在settings.py中添加:

6、運(yùn)行

直接報(bào)錯(cuò)牲迫,所以我們在settings.py添加頭信息

運(yùn)行一段時(shí)候后又報(bào)錯(cuò)了耐朴,看來需要隨機(jī)更換表頭信息。

這里我們使用第三方庫很方便盹憎,pip3 install fake_useragent

安裝成功后我們在middlewares.py中導(dǎo)入:from fake_useragent import UserAgent

添加如下代碼:

在settings.py文件中添加

運(yùn)行main文件:

即可筛峭。

小結(jié):

效果圖:


問題:

在運(yùn)行過程中遇到了四個(gè)問題:

1、沒有獲取大到圖片連接:

可能這個(gè)網(wǎng)站有兩個(gè)版本獲取的css方式不一樣陪每。

解決方法:可以使用xpath中的|(或)來解決

2影晓、沒有獲取到圖片名稱

解決方法:同上

3、圖片名稱相同

解決方法:可以使用md5加密后添加奶稠,你也可以使用你自己的方法

4俯艰、在圖片名中含有?/\等非法字符

解決方法:可以通過正則過濾锌订,如果md5加密竹握,那么一下解決兩個(gè)問題。

雖然有些圖片沒有獲取到辆飘,但是還是爬取了很多啦辐。有興趣的可以嘗試去修改谓传。

關(guān)注公眾號python入門到放棄回復(fù)表情包獲取源碼

完芹关。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末续挟,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子侥衬,更是在濱河造成了極大的恐慌诗祸,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,692評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件轴总,死亡現(xiàn)場離奇詭異直颅,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)怀樟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,482評論 3 392
  • 文/潘曉璐 我一進(jìn)店門功偿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人往堡,你說我怎么就攤上這事械荷。” “怎么了虑灰?”我有些...
    開封第一講書人閱讀 162,995評論 0 353
  • 文/不壞的土叔 我叫張陵吨瞎,是天一觀的道長。 經(jīng)常有香客問我瘩缆,道長关拒,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,223評論 1 292
  • 正文 為了忘掉前任庸娱,我火速辦了婚禮,結(jié)果婚禮上谐算,老公的妹妹穿的比我還像新娘熟尉。我一直安慰自己,他們只是感情好洲脂,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,245評論 6 388
  • 文/花漫 我一把揭開白布斤儿。 她就那樣靜靜地躺著,像睡著了一般恐锦。 火紅的嫁衣襯著肌膚如雪往果。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,208評論 1 299
  • 那天一铅,我揣著相機(jī)與錄音陕贮,去河邊找鬼。 笑死潘飘,一個(gè)胖子當(dāng)著我的面吹牛肮之,可吹牛的內(nèi)容都是我干的掉缺。 我是一名探鬼主播,決...
    沈念sama閱讀 40,091評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼戈擒,長吁一口氣:“原來是場噩夢啊……” “哼眶明!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起筐高,我...
    開封第一講書人閱讀 38,929評論 0 274
  • 序言:老撾萬榮一對情侶失蹤搜囱,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后柑土,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體犬辰,經(jīng)...
    沈念sama閱讀 45,346評論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,570評論 2 333
  • 正文 我和宋清朗相戀三年冰单,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了幌缝。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,739評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡诫欠,死狀恐怖涵卵,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情荒叼,我是刑警寧澤轿偎,帶...
    沈念sama閱讀 35,437評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站被廓,受9級特大地震影響坏晦,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜嫁乘,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,037評論 3 326
  • 文/蒙蒙 一昆婿、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蜓斧,春花似錦仓蛆、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,677評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至直奋,卻和暖如春能庆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背脚线。 一陣腳步聲響...
    開封第一講書人閱讀 32,833評論 1 269
  • 我被黑心中介騙來泰國打工搁胆, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,760評論 2 369
  • 正文 我出身青樓丰涉,卻偏偏與公主長得像拓巧,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子一死,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,647評論 2 354

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