Python爬虫Scrapy框架:scrapy常用配置

2019-12-23  本文已影响0人  25岁学Python

一.基本配置

1.项目名称

2.爬虫应用路径

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

3.客户端User-Agent请求头

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

4.是否遵循爬虫协议

ROBOTSTXT_OBEY = False

5.是否支持cookie,cookiejar进行操作cookie

COOKIES_ENABLED = True

6.Telnet用于查看当前爬虫的

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

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'
        }
    }


推荐Python大牛在线分享技术 扣qun:855408893

领域:web开发,爬虫,数据分析,数据挖掘,人工智能

零基础到项目实战,7天学习上手做项目

二.并发和延迟

1.下载器总共最大处理的并发请求数

CONCURRENT_REQUESTS = 32默认值16

2.每个域名能够被执行的最大并发请求数目

CONCURRENT_REQUESTS_PER_DOMAIN = 16默认值8

3.能够被单个IP处理的并发请求数

默认值0,代表无限制,需要注意两点

4.如果没有开启智能限速

这个值就代表一个规定死的值,代表对同一网址延迟请求的秒数

DOWNLOAD_DELAY = 3

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

上一篇 下一篇

猜你喜欢

热点阅读