繼續(xù)學習Python下的scrapy爬蟲
本次試驗瑞信,嘗試通過python爬蟲中的管道文件來保存數(shù)據(jù),爬蟲代碼如下:
return與yield的異同:
同:都用來獲取數(shù)據(jù)
異:return表示的是爬蟲獲得數(shù)據(jù)返回后就結(jié)束執(zhí)行:調(diào)用了前面函數(shù)后讨盒,返回固定值,不執(zhí)行后面語句溢谤,并將其存在(items=[])列表中,其語句寫在for語句外面;
yield 會在爬蟲執(zhí)行過程中一直獲取值斩松,并繼續(xù)執(zhí)行yield后面的語句伶唯。若將其寫在for語句里面,會一直獲取數(shù)據(jù)返回管道惧盹,直到for循環(huán)結(jié)束乳幸,適用于處理爬取大數(shù)據(jù)時。
注意钧椰,要想調(diào)用pipeline.py粹断,首先必須要在setting.py中配置pipeline,如圖所示:
在這里演侯,數(shù)字的取值范圍為1~1000姿染,而且值越小,優(yōu)先級越高秒际。
接下來開始編寫pipeline文件:
啟動爬蟲悬赏,結(jié)束后將在執(zhí)行爬蟲的目錄中生成一個名為a.json的文件,文件預覽入下圖所示:
Done!