`
shareHua
  • 浏览: 14500 次
  • 性别: Icon_minigender_1
  • 来自: 群:57917725
社区版块
存档分类
最新评论

scrapy缺省设置

阅读更多

BOT_NAME = 'scrapybot'

CLOSESPIDER_TIMEOUT = 0
CLOSESPIDER_PAGECOUNT = 0
CLOSESPIDER_ITEMCOUNT = 0
CLOSESPIDER_ERRORCOUNT = 0

COMMANDS_MODULE = ''

CONCURRENT_ITEMS = 100

CONCURRENT_REQUESTS = 16
CONCURRENT_REQUESTS_PER_DOMAIN = 8
CONCURRENT_REQUESTS_PER_IP = 0

COOKIES_ENABLED = True
COOKIES_DEBUG = False

DEFAULT_ITEM_CLASS = 'scrapy.item.Item'

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

DEPTH_LIMIT = 0
DEPTH_STATS = True
DEPTH_PRIORITY = 0

DNSCACHE_ENABLED = True

DOWNLOAD_DELAY = 0

DOWNLOAD_HANDLERS = {}
DOWNLOAD_HANDLERS_BASE = {
    'file': 'scrapy.core.downloader.handlers.file.FileDownloadHandler',
    'http': 'scrapy.core.downloader.handlers.http.HttpDownloadHandler',
    'https': 'scrapy.core.downloader.handlers.http.HttpDownloadHandler',
    's3': 'scrapy.core.downloader.handlers.s3.S3DownloadHandler',
}

DOWNLOAD_TIMEOUT = 180      # 3mins

DOWNLOADER_DEBUG = False

DOWNLOADER_HTTPCLIENTFACTORY = 'scrapy.core.downloader.webclient.ScrapyHTTPClientFactory'
DOWNLOADER_CLIENTCONTEXTFACTORY = 'scrapy.core.downloader.webclient.ScrapyClientContextFactory'

DOWNLOADER_MIDDLEWARES = {}

DOWNLOADER_MIDDLEWARES_BASE = {
    # Engine side
    'scrapy.contrib.downloadermiddleware.robotstxt.RobotsTxtMiddleware': 100,
    'scrapy.contrib.downloadermiddleware.httpauth.HttpAuthMiddleware': 300,
    'scrapy.contrib.downloadermiddleware.downloadtimeout.DownloadTimeoutMiddleware': 350,
    'scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware': 400,
    'scrapy.contrib.downloadermiddleware.retry.RetryMiddleware': 500,
    'scrapy.contrib.downloadermiddleware.defaultheaders.DefaultHeadersMiddleware': 550,
    'scrapy.contrib.downloadermiddleware.redirect.RedirectMiddleware': 600,
    'scrapy.contrib.downloadermiddleware.cookies.CookiesMiddleware': 700,
    'scrapy.contrib.downloadermiddleware.httpproxy.HttpProxyMiddleware': 750,
    'scrapy.contrib.downloadermiddleware.httpcompression.HttpCompressionMiddleware': 800,
    'scrapy.contrib.downloadermiddleware.chunked.ChunkedTransferMiddleware': 830,
    'scrapy.contrib.downloadermiddleware.stats.DownloaderStats': 850,
    'scrapy.contrib.downloadermiddleware.httpcache.HttpCacheMiddleware': 900,
    # Downloader side
}

DOWNLOADER_STATS = True

DUPEFILTER_CLASS = 'scrapy.dupefilter.RFPDupeFilter'

try:
    EDITOR = os.environ['EDITOR']
except KeyError:
    if sys.platform == 'win32':
        EDITOR = '%s -m idlelib.idle'
    else:
        EDITOR = 'vi'

EXTENSIONS = {}

EXTENSIONS_BASE = {
    'scrapy.contrib.corestats.CoreStats': 0,
    'scrapy.webservice.WebService': 0,
    'scrapy.telnet.TelnetConsole': 0,
    'scrapy.contrib.memusage.MemoryUsage': 0,
    'scrapy.contrib.memdebug.MemoryDebugger': 0,
    'scrapy.contrib.closespider.CloseSpider': 0,
    'scrapy.contrib.feedexport.FeedExporter': 0,
    'scrapy.contrib.logstats.LogStats': 0,
    'scrapy.contrib.spiderstate.SpiderState': 0,
    'scrapy.contrib.throttle.AutoThrottle': 0,
}

FEED_URI = None
FEED_URI_PARAMS = None # a function to extend uri arguments
FEED_FORMAT = 'jsonlines'
FEED_STORE_EMPTY = False
FEED_STORAGES = {}
FEED_STORAGES_BASE = {
    '': 'scrapy.contrib.feedexport.FileFeedStorage',
    'file': 'scrapy.contrib.feedexport.FileFeedStorage',
    'stdout': 'scrapy.contrib.feedexport.StdoutFeedStorage',
    's3': 'scrapy.contrib.feedexport.S3FeedStorage',
    'ftp': 'scrapy.contrib.feedexport.FTPFeedStorage',
}
FEED_EXPORTERS = {}
FEED_EXPORTERS_BASE = {
    'json': 'scrapy.contrib.exporter.JsonItemExporter',
    'jsonlines': 'scrapy.contrib.exporter.JsonLinesItemExporter',
    'csv': 'scrapy.contrib.exporter.CsvItemExporter',
    'xml': 'scrapy.contrib.exporter.XmlItemExporter',
    'marshal': 'scrapy.contrib.exporter.MarshalItemExporter',
    'pickle': 'scrapy.contrib.exporter.PickleItemExporter',
}

HTTPCACHE_ENABLED = False
HTTPCACHE_DIR = 'httpcache'
HTTPCACHE_IGNORE_MISSING = False
HTTPCACHE_STORAGE = 'scrapy.contrib.httpcache.DbmCacheStorage'
HTTPCACHE_EXPIRATION_SECS = 0
HTTPCACHE_IGNORE_HTTP_CODES = []
HTTPCACHE_IGNORE_SCHEMES = ['file']
HTTPCACHE_DBM_MODULE = 'anydbm'

ITEM_PROCESSOR = 'scrapy.contrib.pipeline.ItemPipelineManager'

# Item pipelines are typically set in specific commands settings
ITEM_PIPELINES = []

LOG_ENABLED = True
LOG_ENCODING = 'utf-8'
LOG_FORMATTER = 'scrapy.logformatter.LogFormatter'
LOG_STDOUT = False
LOG_LEVEL = 'DEBUG'
LOG_FILE = None

LOG_UNSERIALIZABLE_REQUESTS = False

LOGSTATS_INTERVAL = 60.0

MAIL_DEBUG = False
MAIL_HOST = 'localhost'
MAIL_PORT = 25
MAIL_FROM = 'scrapy@localhost'
MAIL_PASS = None
MAIL_USER = None

MEMDEBUG_ENABLED = False        # enable memory debugging
MEMDEBUG_NOTIFY = []            # send memory debugging report by mail at engine shutdown

MEMUSAGE_ENABLED = False
MEMUSAGE_LIMIT_MB = 0
MEMUSAGE_NOTIFY_MAIL = []
MEMUSAGE_REPORT = False
MEMUSAGE_WARNING_MB = 0

NEWSPIDER_MODULE = ''

RANDOMIZE_DOWNLOAD_DELAY = True

REDIRECT_ENABLED = True
REDIRECT_MAX_METAREFRESH_DELAY = 100
REDIRECT_MAX_TIMES = 20 # uses Firefox default setting
REDIRECT_PRIORITY_ADJUST = +2

REFERER_ENABLED = True

RETRY_ENABLED = True
RETRY_TIMES = 2 # initial response + 2 retries = 3 requests
RETRY_HTTP_CODES = [500, 503, 504, 400, 408]
RETRY_PRIORITY_ADJUST = -1

ROBOTSTXT_OBEY = False

SCHEDULER = 'scrapy.core.scheduler.Scheduler'
SCHEDULER_DISK_QUEUE = 'scrapy.squeue.PickleLifoDiskQueue'
SCHEDULER_MEMORY_QUEUE = 'scrapy.squeue.LifoMemoryQueue'

SPIDER_MANAGER_CLASS = 'scrapy.spidermanager.SpiderManager'

SPIDER_MIDDLEWARES = {}

SPIDER_MIDDLEWARES_BASE = {
    # Engine side
    'scrapy.contrib.spidermiddleware.httperror.HttpErrorMiddleware': 50,
    'scrapy.contrib.spidermiddleware.offsite.OffsiteMiddleware': 500,
    'scrapy.contrib.spidermiddleware.referer.RefererMiddleware': 700,
    'scrapy.contrib.spidermiddleware.urllength.UrlLengthMiddleware': 800,
    'scrapy.contrib.spidermiddleware.depth.DepthMiddleware': 900,
    # Spider side
}

SPIDER_MODULES = []

STATS_CLASS = 'scrapy.statscol.MemoryStatsCollector'
STATS_DUMP = True

STATSMAILER_RCPTS = []

TEMPLATES_DIR = abspath(join(dirname(__file__), '..', 'templates'))

URLLENGTH_LIMIT = 2083

USER_AGENT = 'Scrapy/%s (+http://scrapy.org)' % __import__('scrapy').__version__

TELNETCONSOLE_ENABLED = 1
TELNETCONSOLE_PORT = [6023, 6073]
TELNETCONSOLE_HOST = '0.0.0.0'

WEBSERVICE_ENABLED = True
WEBSERVICE_LOGFILE = None
WEBSERVICE_PORT = [6080, 7030]
WEBSERVICE_HOST = '0.0.0.0'
WEBSERVICE_RESOURCES = {}
WEBSERVICE_RESOURCES_BASE = {
    'scrapy.contrib.webservice.crawler.CrawlerResource': 1,
    'scrapy.contrib.webservice.enginestatus.EngineStatusResource': 1,
    'scrapy.contrib.webservice.stats.StatsResource': 1,
}

SPIDER_CONTRACTS = {}
SPIDER_CONTRACTS_BASE = {
    'scrapy.contracts.default.UrlContract' : 1,
    'scrapy.contracts.default.ReturnsContract': 2,
    'scrapy.contracts.default.ScrapesContract': 3,
}
分享到:
评论

相关推荐

    scrapy中如何设置应用cookies的方法(3种)

    - 当COOKIES_ENABLED设置为True时,Scrapy会禁用默认的cookie策略,并使用用户自定义的cookies设置。 例如,用户可以在settings.py中这样设置: ```python COOKIES_ENABLED = True ``` 然后,在自定义的管道或...

    python 基于Scrapy框架抓取图片

    二、安装与设置Scrapy 首先,确保已安装Python,然后通过pip命令安装Scrapy: ``` pip install scrapy ``` 接着创建一个新的Scrapy项目,使用以下命令: ``` scrapy startproject myproject ``` 这会在当前目录下...

    zhihu_scrapy-master.zip

    1. `settings.py`:这是Scrapy项目的配置文件,包含了爬虫的全局设置,如数据存储的数据库连接、中间件配置、下载延迟等。 2. `items.py`:定义了需要爬取的数据结构,如知乎用户的用户名、头像URL、简介等。 3. `...

    scrapy爬取大文件方法

    4. **速率控制**:Scrapy允许设置下载速率限制,防止因过快的下载速度导致的服务器压力或IP被封禁。这可以通过调整`DOWNLOAD_DELAY`设置来实现,或者使用下载器中间件来动态调整速率。 5. **错误处理和重试策略**:...

    django+scrapy结合

    本篇文章将详细探讨如何将两个强大的Python库——Django和Scrapy结合,以实现通过Django的Web界面控制Scrapy爬虫的运行,并将爬取的数据存入数据库。 首先,让我们了解这两个框架的基本概念。Django是一个高级的Web...

    Scrapy安装文件及其依赖项

    在Scrapy的上下文中,这个库可能用于处理与操作系统交互的任务,比如设置爬虫的工作目录或者创建多线程。 3. **Twisted**: Twisted是一个异步网络编程框架,它允许Scrapy以非阻塞的方式处理网络请求,极大地提高了...

    scrapy设置user-agent 和ip的和在线打码适合python3代码

    在本案例中,我们将深入探讨如何在Scrapy中设置User-Agent,如何处理IP代理,并简要提及在线打码解决方案。 **一、设置User-Agent** User-Agent是浏览器向服务器发送请求时附带的一种标识,表明了访问者的身份。在...

    scrapy_Python的爬虫框架Scrapy_scrapy_

    8. **Scrapy设置** 在Scrapy项目中,可以通过`settings.py`文件配置各种参数,如下载延迟、并发请求的数量、中间件和Pipeline的启用等,以满足特定的爬虫需求。 9. **Scrapy命令行工具** Scrapy提供了一系列...

    百度百科爬虫Scrapy

    7. 考虑到反爬策略,可以利用Scrapy的中间件功能,设置User-Agent、延时请求、处理验证码等。 **四、参考JSON数据** 爬取的数据通常会以JSON格式存储,便于后续处理和分析。JSON是一种轻量级的数据交换格式,易于...

    Python_Scrapy.zip

    在实现翻页功能时,Scrapy通过设置`start_urls`和`parse`方法来处理网页的链接。`start_urls`用于定义爬虫启动时要访问的初始URL,`parse`方法则解析这些页面并找到下一页的链接。使用`scrapy.Request`对象,我们...

    scrapy 0.22.3

    ### Scrapy 0.22.3:一个强大的网络爬虫框架 #### 一、Scrapy简介 **Scrapy** 是一个用于爬取网站并提取结构化数据的应用框架,广泛应用于数据挖掘、信息处理或历史档案等领域。尽管最初设计是为了进行网页抓取...

    精通Scrapy网络爬虫_python_scrapy_

    8. **Settings**:Scrapy设置允许你配置项目的行为,如更改默认的下载延迟、启用或禁用某些中间件等。 学习Scrapy的过程中,你将了解到如何创建项目、编写Spider、定义Item和Pipeline、配置中间件,以及如何运行和...

    scrapy-redis-master_scrapy-redis_juzi1122_scrapy_

    它负责决定下一个要爬取的URL,可以设置优先级,控制爬取顺序。 6. **Spider Middleware**: 蜘蛛中间件在Scrapy-Redis中起到连接Scrapy核心和Redis队列的作用,处理请求和响应,如添加或修改请求,处理异常等。 7....

    用Pyinstaller打包Scrapy项目例子

    然而,Scrapy项目通常是基于命令行启动的,这意味着在不安装Python和Scrapy的情况下无法直接运行。为了在不依赖Python环境的计算机上运行Scrapy项目,我们可以利用Pyinstaller将其打包成exe文件。 首先,确保你已经...

    scrapy-pyppeteer:Scrapy的Pyppeteer集成

    未维护如果您需要Scrapy的浏览器集成,请考虑使用Scrapy的Pyppeteer集成 该项目提供了一个Scrapy下载处理程序,该处理程序使用执行请求。 它可用于处理需要JavaScript的页面。 该软件包不会干扰常规的Scrapy工作流程...

    python scrapy电子书开发文档

    - **设置**:列出了所有可用的Scrapy设置选项及其默认值。 - **信号**:描述了Scrapy中的信号机制。 - **异常**:列出了Scrapy中可能抛出的各种异常类型。 - **Item导出器**:介绍如何将Item对象转换为不同的格式。 ...

    scrapy

    7. **Settings(设置)**:配置文件,允许用户设置Scrapy的各种行为,如下载延迟、请求头、代理服务器等。 8. **Selectors(选择器)**:Scrapy内置了强大的XPath和CSS选择器,用于从HTML或XML文档中提取数据。 ...

    scrapy-0.24中文文档|中文教程

    学习Scrapy 0.24的中文文档,你可以掌握如何设置和运行一个Scrapy项目,理解基本的爬虫结构,学习如何定义Spider、Item、Pipeline,以及如何使用中间件来定制爬虫行为。这将为你进一步深入到网络数据抓取和数据分析...

    scrapy 0.25中文文档

    20. Settings与Signals:展示了如何配置Scrapy的设置和信号。 21. Exceptions:包含了所有可用的异常和它们的意义。 22. ItemExporters:可以将爬取到的items快速导出到不同格式的文件中。 23. 更新日志(Release...

    scrapy爬虫实例代码

    Scrapy是一个强大的Python爬虫框架,它为网络爬虫的开发提供了高效且便捷的工具集。这个名为"scrapy爬虫实例代码"的压缩包包含了使用Scrapy进行爬虫编程的一些示例,可以帮助初学者更好地理解和掌握Scrapy的用法。 ...

Global site tag (gtag.js) - Google Analytics