scrapy遇到的坑

2021-08-22 13:21:58 字數 2133 閱讀 7682

1.有時候我們爬取資料跑了半天,突然報錯了,例如網路中斷,我們想繼續爬取,不需程式從頭開始爬取,可以採取下面的方案

要啟用乙個爬蟲的持久化,執行以下命令:

scrapy crawl somespider -s jobdir=crawls/somespider-1
然後,你就能在任何時候安全地停止爬蟲(按ctrl-c或者傳送乙個訊號)。恢復這個爬蟲也是同樣的命令:

scrapy crawl somespider -s jobdir=crawls/somespider-1
3.定時執行多個爬蟲任務,

在main.py裡面寫以下**

import time

import os

while true:

print('the first spider')

os.system("scrapy crawl human -o human.json")

print('the second spider')

os.system("scrapy crawl nbgov -o nbgov.json")

time.sleep(86400)# 24hours

4.scrapy的預設********** middleware的設定如下:

'scrapy.**********middlewares.httpcache.httpcachemiddleware': 900,要使得我們自定義的cookiesmiddleware生效,它在內建的cookiesmiddleware之前呼叫。內建的cookiesmiddleware的優先順序為700,所以這裡我們設定乙個比700小的數字即可。

要使得我們自定義的proxymiddleware生效,它在內建的httpproxymiddleware之前呼叫。內建的httpproxymiddleware的優先順序為750,所以這裡我們設定乙個比750小的數字即可。

5.scrapy如果在儲存資料的時候報錯

invaliddocument: cannot encode object:
那麼可能是你的item中的資料有物件,比如numpy, 將資料的數字轉為int或者float,或者其他的轉為str,將資料變為非物件就可以了 

初學scrapy框架遇到的坑(下)

接上 初學scrapy框架遇到的坑 上 初學scrapy遇到的坑 中 在前面兩個中已經爬取了部落格的標題和鏈結,在這裡繼續前面的步驟,開始爬取部落格的內容部分。coding utf 8 import scrapy from bs4 import beautifulsoup from items im...

Linux安裝scrapy框架所遇到的坑

在進行爬蟲框架學習時,第一步需要安裝scrapy框架,但這哥們可是一點也不好安裝,所以我想把我所遇到的一些問題總結一下,希望能給遇到問題的朋友帶來一些幫助。在安裝scrapy前需要安裝scrapy所依賴的包。sudo apt get install build essential sudo apt ...

安裝scrapy填坑

前言 在筆記本安裝了python2.7和python3.5,pip的指令分別更改為pip2以及pip3,當使用pip2安裝scrapy時順利安裝,使用pip3安裝時出錯了 報錯1 unable to find vcvarsall.bat 報錯2 command c1.exe failed no su...