无法将.egg文件添加到scrapyd addversion.json

问题描述 投票:0回答:1

我遇到的问题是我无法使用.egg文件上传到scrapyd

curlhttp://127.0.0.1:6800/addversion.json-F project = scraper_app -F version = r1 egg=@scraper_app-0.0.1-py3.8.egg

它返回这样的错误消息

{“ node_name”:“工作区”,“ status”:“错误”,“ message”:“ b'egg'”}

所以我在同一项目中使用了DjangoScrapy,并且我有此文件夹结构

my_app/
-- apps/  # django apps folder
   -- crawler/ 
      -- __init__.py
      -- admin.py
      -- apps.py
      -- etc..
   -- pages/
      -- __init__.py
      -- admin.py
      -- apps.py
      -- etc..
-- my_app/  # django project folder
   -- __init__.py
   -- asgi.py
   -- settings.py
   -- etc..
-- scraper_app/ # scrapy dir
   -- scraper_app/ # scrapy project folder
      -- spiders/
         -- abc_spider.py
      -- __init__.py
      -- middlewares.py
      -- pipelines.py
      -- settings.py
      -- etc..
   -- scrapy.cfg
-- manage.py
-- scrapyd.conf
-- setup.py  # setuptools for creating the egg file
-- etc..

这是我的setup.py的样子

from setuptools import setup, find_packages

setup(
    name="scraper_app",
    version="1.0.0",
    author="Khrisna Gunanasurya",
    author_email="[email protected]",
    description="Create egg file from 'scraper_app'",
    packages=find_packages(where=['scraper_app'])
)

我的scrapyd.conf文件

[scrapyd]
eggs_dir    = eggs
logs_dir    = logs
logs_to_keep = 5
dbs_dir     = dbs
max_proc    = 0
max_proc_per_cpu = 4
http_port   = 6800
debug       = off
runner      = scrapyd.runner
application = scrapyd.app.application

和我的scrapy.cfg内容

[settings]
default = scraper_app.settings

[deploy]
url = http://127.0.0.1:6800/
project = scraper_app

所以我想要将.egg文件添加到scrapyd/addversion.json,这是我逐步实现我想要的目标:

  1. 运行py setup.py bdist_egg
  2. .egg文件正在dist/文件夹中生成,并且名为scraper_app-0.0.1-py3.8.egg
  3. cd到dist/文件夹
  4. 运行curl http://127.0.0.1:6800/addversion.json -F project=scraper_app -F version=r1 -F egg=@scraper_app-0.0.1-py3.8.egg

然后我得到的是一条错误消息,如果我尝试从根目录运行curl,并运行类似此curl http://127.0.0.1:6800/addversion.json -F project=scraper_app -F version=r1 -F egg=@dist\scraper_app-0.0.1-py3.8.egg的操作(例如,使用Windows,它将返回此错误]

卷曲:(6)无法解析主机:dist \ scraper_app-0.0.1-py3.8.egg

[我已经尝试过用Google搜索它,但是我找不到在这里解决的方法或错误的步骤,而且我已经尝试直接从.egg目录创建scraper_app文件,所以只需创建一个鸡蛋scraper_app项目文件夹中的文件,但效果不佳。

有人可以告诉我我的项目有什么问题吗?还是我在这里做错了什么?

谢谢

python django scrapy python-3.8 scrapyd
1个回答
0
投票

[我在Google上进行了更多搜索,并尝试了scrapyd-client后,但是Windows出现了很多问题,使用scrapyd-deploy并不容易,但是我在youtube上发现了一个视频,向我展示了正确的安装方式scrapyd-client

所以这是安装它的正确方法。

请确保您位于virtualenv中,然后将scrapyd-clientpip install git+https://github.com/scrapy/scrapyd.git一起安装。因此它不会显示任何错误或安装困难]

然后您就可以在scrapy项目文件夹上运行scrapyd-deploy

© www.soinside.com 2019 - 2024. All rights reserved.