(1)我想使用process.crawl('spidername')来运行scrapy但是wdir不是scrapy项目目录
就像这样:
workspace
├─ scrapy_project
│ ├─ project_name
│ ├─ spiders
│ │ └─ myspider.py #import errors(2)
│ ├─ items.py
│ └─ settings.py
└─ run.py # (1)i want to run this file to run the spider
(2)另一个问题是,它有错误,当我导入scrapy_project.project_name。
如何将Items .py导入到myspider.py
最惯用的方法是将scrapy_project
包安装到您想要运行它的任何环境中,然后以这种方式导入您的方法。这允许您在任何您想要的地方使用您编写的scrapy代码。有关打包代码的更多信息,请参阅https://packaging.python.org/en/latest/tutorials/packaging-projects/
一旦你有了你的scrapy
包,你可以使用shell来安装它:
pip3 install /path/to/scrapy
如果你想访问"spiders"从run.py中,使用相对路径:scrapy_projectproject_namespiders
如果你只想使用这个函数,你必须导入"spiders"到"run.py"这样的:
from spiders import function
(可能必须使用相对路径,scrapy_projectproject_namespider)