scrapyWeb爬虫项目部署指南

在windows环境中,当我们需要部署scrapy项目到服务器时,常用到scrapyd,作为部署管理工具,在服务器端安装scrapyd并运行后,就可以正常使用。但是,当我们需要将windows本地的scrapy项目部署到服务器上时,需要安装scrapyd-client,用于打包项目,并发送给远程的scrapyd。
 
  1. 爬虫项目中,如果涉及配置文件,例如.json,.cfg等文件,尽量将其转化为.py文件作为配置引入,若无法修改,请在项目目录下新建setup.py,以下是此文件的代码示例:
from setuptools import setup, find_packages
setup(
    name         = 'project',
    version      = '1.0',
    packages     = find_packages(),
    entry_points = {'scrapy': ['settings = udn_spider.settings']},
    include_package_data = True,
    package_data = {
        '': ['*.json'],
        'bandwidth_reporter': ['*.json'],
    },
)

打包成.egg

pip install scrapyd-client

scrapyd-deploy -h  #查看命令
scrapyd-deploy --build-egg XXX.egg

可能遇到的问题:

对于windows系统,建议不要用pip install scrapyd-client去安装scrapyd-client,会出现,scrapyd-deploy不是内部或外部命令,因为scrapyd-deploy不能被windows执行

应当直接去github上下载并解压安装包后,进入解压后的目录下,执行

python setup.py install


进行安装,若已经用pip安装了的,先卸载Scrapyd-client

pip uninstall scrapyd-client

问题描述:scrapyd-deploy不是内部或外部命令(’scrapyd-deploy’ is not recognized as an internal or external command, operable program or batch file. )

这个问题当时在网上查找解决方案,普遍都是使用一个bat文件对路径进行映射,让windows能正常启动该插件。其具体的代码为:

@echo off
"python.exe的路径" "scrapyd-deploy的路径"%*
 

在python目录的Scripts目录下,能找到一个scrapy-deploy的文件,但是无法运行。解决办法:
1.进到D:/python/Scripts 目录下,创建两个新文件:
scrapy.bat
scrapyd-deploy.bat


2. 编辑两个文件:
scrapy.bat文件中输入以下内容 :

@echo off
D:\Python36\python D:\Python36\Scripts\scrapy %*

scrapyd-deploy.bat 文件中输入以下内容:

@echo off
D:\Python36\python D:\Python36\Scripts\scrapyd-deploy %*


3. 保存退出,并确保你的 D:/python 和D:/python/Scripts  都在环境变量。这样就可以正常运行scrapy-deploy命令了。
 

爬虫项目部署分为以下步骤:

  1. 将代码上传至spiderman
  2. 登录servers - ScrapydWeb
  3. 移动到deploy Project

scrapyWeb爬虫项目部署指南_第1张图片

  1. 点击auto packaging,选择你需要上传打包的项目,点击package & deploy项目即可部署完毕

 

你可能感兴趣的:(爬虫,python,开发语言)