scrapy經常使用配置

一.基本配置

1.項目名稱

2.爬蟲應用路徑

SPIDER_MODULES = ['Amazon.spiders']
NEWSPIDER_MODULE = 'Amazon.spiders'html

3.客戶端User-Agent請求頭

USER_AGENT = 'Amazon (+http://www.yourdomain.com)'python

4.是否遵循爬蟲協議

ROBOTSTXT_OBEY = Falsecookie

5.是否支持cookie,cookiejar進行操做cookie

COOKIES_ENABLED = True併發

6.Telnet用於查看當前爬蟲的

TELNETCONSOLE_ENABLED = False
TELNETCONSOLE_HOST = '127.0.0.1'
TELNETCONSOLE_PORT = [6023,]app

7.全局設置使用的請求頭

DEFAULT_REQUEST_HEADERS = {  
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',  
'Accept-Language': 'en',
}

8.局部設置使用的請求頭

#爬蟲程序類中設置
    custom_settings = {
        'DEFAULT_REQUEST_HEADERS' : {
            'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
            'Accept-Language': 'en',
            "User-Agent":'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36'
        }
    }

二.併發和延遲

1.下載器總共最大處理的併發請求數

CONCURRENT_REQUESTS = 32默認值16dom

2.每一個域名可以被執行的最大併發請求數目

CONCURRENT_REQUESTS_PER_DOMAIN = 16默認值8ide

3.可以被單個IP處理的併發請求數

默認值0,表明無限制,須要注意兩點調試

  • 若是不爲零,那CONCURRENT_REQUESTS_PER_DOMAIN將被忽略,即併發數的限制是按照每一個IP來計算,而不是每一個域名
  • 該設置也影響DOWNLOAD_DELAY,若是該值不爲零,那麼DOWNLOAD_DELAY下載延遲是限制每一個IP而不是每一個域
    CONCURRENT_REQUESTS_PER_IP = 16

4.若是沒有開啓智能限速

這個值就表明一個規定死的值,表明對同一網址延遲請求的秒數code

DOWNLOAD_DELAY = 3xml

5.延遲

開啓True,默認False
AUTOTHROTTLE_ENABLED = True
起始的延遲
AUTOTHROTTLE_START_DELAY = 5
最小延遲
DOWNLOAD_DELAY = 3
最大延遲
AUTOTHROTTLE_MAX_DELAY = 10

每秒併發請求數的平均值

AUTOTHROTTLE_TARGET_CONCURRENCY = 16.0不能高於 CONCURRENT_REQUESTS_PER_DOMAIN或CONCURRENT_REQUESTS_PER_IP

6.調試

AUTOTHROTTLE_DEBUG = True CONCURRENT_REQUESTS_PER_DOMAIN = 16 CONCURRENT_REQUESTS_PER_IP = 16

相關文章
相關標籤/搜索