scrapy 2.x相关配置

发布时间 2023-07-01 09:04:16作者: CJTARRR
  • 使用pip安装scrapy之后可能并不能直接运行,会遇到各种报错,可能是依赖库的版本不兼容导致的,可能需要安装或更新以下依赖:

    cryptography==38.0.4

    pyopenssl==22.0.0

    certifi==2023.5.7
  • 在windows python3.8+下的scrapy框架内使用asyncio需要先执行以下代码:

    asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
  • 如果需要开启scrapy的协程功能(需要2.x版本),需要到settings中做如下配置:

    # 开启协程相关配置
    import platform
    import asyncio

    if platform.system().lower() == 'windows':  # windows配置
       TWISTED_REACTOR = 'twisted.internet.asyncioreactor.AsyncioSelectorReactor'
       asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())  # win下python3.8+需要的特殊配置
    elif platform.system().lower() == 'linux':  # linux配置
       import scrapy

       scrapy.utils.reactor.install_reactor('twisted.internet.asyncioreactor.AsyncioSelectorReactor')