由osscrapycookiecutter自动生成

os-scrapy-uvicorn的Python项目详细描述


乌维科恩

Build StatuscodecovPyPI - Python VersionPyPI

这个项目提供了一个扩展,可以在同一个进程中启动asgihttp服务器(Uvicorn)。在

您可以使用ASGI framework(推荐使用FastAPI)创建与Scrapy通信的应用程序。在

要求:python3.6+,Scrapy 2.0+

安装

pip install os-scrapy-uvicorn

您可以直接在项目根路径中运行示例spider

^{pr2}$

设置

  • use asyncio reactor

    TWISTED_REACTOR = "twisted.internet.asyncioreactor.AsyncioSelectorReactor"
    

    或者,您可以使用os-scrapy(与此项目一起安装)开始使用-r命令行选项进行爬网

    os-scrapy crawl -r asyncio example
    
  • 启用扩展

    EXTENSIONS = {
        "os_scrapy_uvicorn.Uvicron": 1,
    }
    
  • app path,你可以使用ASGI应用框架来创建你的应用,推荐使用FastAPI

    UVICORN_APP = "app_module:app"
    
  • uvicorn服务器设置,supported settings

    UVICORN_CONFIG = {"host": "0.0.0.0", "port": 5000}
    
  • 当服务器启动时,Scrapy crawler实例被附加到app上,它是与Scrapy通信的入口点

单元测试

sh scripts/test.sh

许可证

麻省理工学院授权。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java GWT对话框从不显示帮助   java在简单的MapReduce作业中带来了极大的开销   javacom。mysql。jdbc。例外情况。jdbc4。MySQLIntegrityConstraintViolationException:列不能为null/onetoone映射   如何通过TCP/IP与Java和Labview进行通信,并发送浮点数据缓冲区?   java Apache camel与spring事件基本示例   java如何使我的秒表应用程序在完全关闭后仍能运行?   java Nutch爬网错误输入路径不存在   java是Mapreduce中按值传递还是按引用传递的键?   正则表达式替换java中的特定字符   Java DOM XML解析   java Eclipse未显示服务器的项目   使用Arraylist进行快速排序的排序Java实现疑难解答   java Split text包含字符串列表中的数字   检查Java中的两个lambda是否执行相同的代码?   java为什么dispatchTouchEvent避免在屏幕上单击?