爬虫工作量由小到大的思维转变---<第四十六章 Scrapyd 用gerapy管理多台机器爬虫(2)>

news2024/11/18 5:30:04

前言:

继续上一篇爬虫工作量由小到大的思维转变---<第四十四章 Scrapyd 用gerapy管理多台机器爬虫>-CSDN博客

要想在电脑B上,部署爬虫应该做哪些?

正文:

前期准备:

1.已经成功在电脑A上启动了gerapy.并能够成功连接电脑A的ip;

原理:

首先,我需要理解,电脑B上理论是不需要再放爬虫代码了,因为已经在gerapy的服务上部署了爬虫项目;而爬虫项目也已经被打包好成了egg!  

因此,我们只需要做的就是,让电脑B,启动scrapyd,然后再用电脑A上的gerapy启动电脑B的scrapyd!

电脑B的工作:

1.安装scrapyd:

是安装全局scrapyd还是虚拟环境下的scrapyd,都随你!

在电脑B上安装Scrapyd通常是指全局安装Scrapyd,这样Scrapyd服务就可以在系统级别运行,无论使用哪个用户账户登录。全局安装确保了Scrapyd作为一个独立的服务运行,可以更方便地进行管理和配置。

使用pip全局安装Scrapyd

  1. 打开命令行界面(在Windows上,您可以搜索cmd命令提示符;在macOS或Linux上,您可以使用Terminal)。

  2. 使用以下命令安装Scrapyd:

    pip install scrapyd
    

如果没有将Python添加到环境变量,或者上面的命令没有作用,可能需要使用完整路径,例如:

c:\python39\python.exe -m pip install scrapyd

(根据Python安装路径和版本调整命令)

使用虚拟环境安装Scrapyd

虽然推荐全局安装Scrapyd以方便服务运行,但也可以在虚拟环境中安装Scrapyd。这通常用于开发环境,或当需要在同一台计算机上管理不同项目的依赖时。如果选择在虚拟环境中安装:

  1. 首先,创建一个新的虚拟环境:

    python -m venv scrapyd-venv
    
  2. 激活虚拟环境:

    • 在Windows上:

      scrapyd-venv\Scripts\activate.bat
      
    • 在macOS或Linux上:

      source scrapyd-venv/bin/activate
      
  3. 在虚拟环境中安装Scrapyd:

    pip install scrapyd
    

使用虚拟环境安装Scrapyd时,需要确保在运行Scrapyd服务之前总是先激活对应的虚拟环境。

配置Scrapyd

无论是全局安装还是在虚拟环境中安装Scrapyd,都可通过修改Scrapyd的配置文件(默认为scrapyd.conf)来配置Scrapyd服务。这包括设置监听端口、日志文件位置等。具体配置项取决于您的实际需求。

小总结

通常推荐在电脑B上全局安装Scrapyd,使其作为系统服务运行。这样可以更便捷地管理Scrapyd服务,特别是在生产环境中。如果出于特定原因需要在虚拟环境中安装Scrapyd,也是可行的,只是在使用时需要注意激活相应的虚拟环境。

2.修改scrapyd的配置(scrapyd.conf)

现在的scrapyd(我当是已经是全局进行安装了),安装完的scrapyd是没有配置文件的,需要自己手动配置!

scrapyd.conf配置文档(翻译版):
# Scrapyd 配置文件

[scrapyd]
# 用于存放 egg 包的目录路径
eggs_dir    = eggs
# 日志文件的目录路径
logs_dir    = logs
# Item 导出文件存放的目录路径
items_dir   = items
# 在日志目录中保存的最大任务(Job)数量
jobs_to_keep = 5
# 数据库文件存放目录,用于保存爬虫状态等信息
dbs_dir     = dbs
# 同时运行的最大进程数,0 表示不限制
max_proc    = 0
# 每个 CPU 核心允许的最大进程数
max_proc_per_cpu = 10
# 完成的作业(Job)保留的最大数量
finished_to_keep = 100
# 调度器轮询间隔时间(秒)
poll_interval = 5.0
# Scrapyd 服务绑定的地址
bind_address = 0.0.0.0
# 监听的 HTTP 端口号
http_port   = 6800
# 是否开启调试模式,开启为 on,关闭为 off
debug       = off
# 任务运行器,用于执行爬虫任务
runner      = scrapyd.runner
# Scrapyd 应用
application = scrapyd.app.application
# 任务启动器,用于管理爬虫进程
launcher    = scrapyd.launcher.Launcher
# Web 服务的根目录
webroot     = scrapyd.website.Root

[services]
# 计划任务接口,用于提交爬虫运行任务
schedule.json     = scrapyd.webservice.Schedule
# 取消任务接口,用于取消正在运行的爬虫任务
cancel.json       = scrapyd.webservice.Cancel
# 添加版本接口,用于上传新版本的爬虫项目
addversion.json   = scrapyd.webservice.AddVersion
# 列出项目接口,返回当前所有的爬虫项目
listprojects.json = scrapyd.webservice.ListProjects
# 列出版本接口,返回指定项目的所有版本
listversions.json = scrapyd.webservice.ListVersions
# 列出爬虫接口,返回指定项目中的所有爬虫
listspiders.json  = scrapyd.webservice.ListSpiders
# 删除项目接口,用于删除整个项目
delproject.json   = scrapyd.webservice.DeleteProject
# 删除版本接口,用于删除项目的特定版本
delversion.json   = scrapyd.webservice.DeleteVersion
# 列出作业接口,展示作业的运行状态等信息
listjobs.json     = scrapyd.webservice.ListJobs
# 守护进程状态接口,返回 Scrapyd 服务的状态信息
daemonstatus.json = scrapyd.webservice.DaemonStatus

3.启动 scrapyd 时指定配置文件

cmd之后,进入到这个scrapyd.conf的文件夹内;然后直接启动这个scrapyd就行(他会默认指认当前的配置文件为启动scrapyd的配置文件)

4.安装爬虫项目所需的依赖包

(如果缺少爬虫所需的依赖包,大概率会部署不上去)

这一步视你的爬虫而定,一般来说,你需要装好你爬虫所需的依赖包! 所以,具体如何把你爬虫的依赖转到另一台电脑上----参考关于python依赖包的问题(番外)-CSDN博客; 或者你用Docker部署

5.完成

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1438086.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

图数据库 之 Neo4j - 环境搭建(2)

运行环境: centos7 Docker version 18.09.6 下载镜像 docker search neo4j docker pull neo4j 创建 neo4j 用户 # 创建 neo4j 用户 # -M 不创建用户的主目录 sudo useradd -M neo4j # usermod 用于修改用户属性命令 # -L 锁定用户,用户无法登录系统 user…

C++中的闭包

在编程语言中,闭包(closure),又称为词法闭包(lexical closure)或函数闭包(function closure),是一种在具有一流函数的语言中(a language with first-class functions)实现词法作用域名称绑定的技术。从操作上来说,闭包是一个将函数…

HiveSQL——借助聚合函数与case when行转列

一、条件函数 if 条件函数 if函数是最常用到的条件函数&#xff0c;其写法是if(xn,a,b), xn代表判断条件&#xff0c;如果xn时&#xff0c;那么结果返回a ,否则返回b。 selectif(age < 25 or age is null, 25岁以下, 25岁以上) as age_cnt,count(1) as number from table…

C语言第二十弹---指针(四)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】 指针 1、字符指针变量 2、数组指针变量 2.1、数组指针变量是什么&#xff1f; 2.2、数组指针变量怎么初始化 3、⼆维数组传参的本质 4、函数指针变量 4.1…

spring boot(2.4.x之前版本)和spring cloud项目中自动装配的监听执行顺序

目录 扫描 org.springframework.context.ApplicationListener 指定的类 内置的监听 spring boot 中的监听 spring boot autoconfigure 中的监听 spring boot context 中的监听 将加载的监听进行排序 spring boot 中的监听 spring boot context 中的监听 监听执行 监听…

Apache Paimon 文件操作

本文旨在澄清不同文件操作对文件的影响。 本页面提供具体示例和实用技巧&#xff0c;以有效地管理这些操作。此外&#xff0c;通过对提交&#xff08;commit&#xff09;和压实&#xff08;compact&#xff09;等操作的深入探讨&#xff0c;我们旨在提供有关文件创建和更新的见…

006集——where语句进行属性筛选——arcgis

在arcgis中&#xff0c; dBASE 文件除了 WHERE 语句以外&#xff0c;不支持 其它 SQL 命令。选择窗口如下&#xff1a; 首先&#xff0c;我们了解下什么是where语句。 WHERE语句是SQL语言中使用频率很高的一种语句。它的作用是从数据库表中选择一些特定的记录行来进行操作。WHE…

第二证券:沪指涨近1%收复2800点,券商等板块拉升,稀土板块爆发

7日早盘&#xff0c;两市股指延续昨日强势&#xff0c;再度拉升。沪指涨近1%克复2800点&#xff0c;深成指、科创50指数大涨约3%&#xff1b;两市半日成交超6000亿元&#xff0c;北向资金净买入超20亿元。 截至午间收盘&#xff0c;沪指涨0.91%报2814.89点&#xff0c;深成指涨…

第1章 认识Flask

学习目标 了解Flask框架&#xff0c;能够说出Flask框架的发展史以及特点 熟悉隔离Python环境的创建方式&#xff0c;能够独立在计算机上创建隔离的Python环境 掌握Flask的安装方式&#xff0c;能够独立在计算机上安装Flask框架 掌握PyCharm配置隔离环境的方式&#xff0c;能…

电脑文件误删除怎么办?8个恢复软件解决电脑磁盘数据可能的误删

您是否刚刚发现您的电脑磁盘数据丢失了&#xff1f;不要绝望&#xff01;无论分区是否损坏、意外格式化或配置错误&#xff0c;存储在其上的文件都不一定会丢失到数字深渊。 我们已经卷起袖子&#xff0c;深入研究电脑分区恢复软件的广阔领域&#xff0c;为您带来一系列最有效…

如何在 emacs 上开始使用 Tree-Sitter (archlinux)

文章目录 如何在emacs上开始使用Tree-Sitter&#xff08;archlinux&#xff09; 如何在emacs上开始使用Tree-Sitter&#xff08;archlinux&#xff09; 在archlinux上使用比windows上不知道要方便多少倍&#xff01; $ sudo pacman -S emacs $ sudo pacman -S tree-sitter这里…

国内首个openEuler师训营圆满结营! 麒麟信安助力培养国产操作系统高质量师资人才

2024年1月22日&#xff0c;全国首个openEuler师训营圆满结营&#xff01;旨在深化产教融合&#xff0c;加速开源教育走进高校&#xff0c;提高师资队伍openEuler专业能力及实践教学水平。 本次师训营由长沙市大数据产业链、长沙市新一代自主安全计算系统产业链指导&#xff0c…

RxJava Subject

目录 AsyncSubjectBehaviorSubjectPublishSubjectReplaySubjectSerializedSubjectUnicastSubject 在Rxjava中&#xff0c; Subject可以同时表示Observer和Observable, 允许从单个源到多个子观察者multiple child Observers。 除了 onSubscribe(io.reactivex.disposables.Dispos…

云计算运维1

1、企业服务器LNMP环境搭建 集群&#xff1a;多台服务器在一起作同样的事 。分布式 &#xff1a;多台服务器在一起作不同的事 。 环境准备&#xff1a; 1、设置静态ip&#xff08;NAT模式网关为.2&#xff09; # cat /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE"E…

【C生万物】C语言分支和循环语句

&#x1f4da;博客主页&#xff1a;爱敲代码的小杨. ✨专栏&#xff1a;《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 ❤️感谢大家点赞&#x1f44d;&#x1f3fb;收藏⭐评论✍&#x1f3fb;&#xff0c;您的三连就是我持续更新的动力❤️ &#x1f64f;小杨水平有…

uniapp /微信小程序 使用map组件实现手绘地图方案

获取地图范围 点图拾取坐标-地图开放平台|腾讯位置服务 获取需要手绘地图左下角和右上角GPS坐标 以北京故宫为例&#xff1a; 截取需要手绘地图进行手绘地图制作 ​​​​​​​​​​​​​​ 素材处理 由于地图素材文件比较大&#xff0c;小程序又限制包大小<2M,无…

51单片机基础:定时器

1.定时器介绍 51单片机通常有两个定时器&#xff1a;定时器 0/1&#xff0c;好一点的可能有定时器3。 在介绍定时器之前我们先科普下几个知识&#xff1a; 1&#xff0c;CPU 时序的有关知识 ①振荡周期&#xff1a;为单片机提供定时信号的振荡源的周期&#xff08;晶振周期或…

RAPTOR:树组织检索的递归抽象处理

RAPTOR: RECURSIVE ABSTRACTIVE PROCESSING FOR TREE-ORGANIZED RETRIEVAL Title&#xff1a;树组织检索的递归抽象处理 https://arxiv.org/pdf/2401.18059.pdf 摘要 检索增强语言模型可以更好的融入长尾问题&#xff0c;但是现有的方法只检索短的连续块&#xff0c;限制了整…

深度测评:ONLYOFFICE 桌面编辑器 v8.0新功能

目录 前言 一、PDF表单处理&#xff1a;提升办公效率 二、RTL&#xff08;从右到左&#xff09;支持&#xff1a;满足不同语言习惯 三、Moodle集成&#xff1a;教育行业的新助力 四、本地界面主题&#xff1a;个性化办公体验 五、性能优化与稳定性提升 六、性能与稳定性…

Ubuntu Linux使用PL2302串口和minicom进行开发板调试

调试远程的服务器上面的BMC&#xff0c;服务器上面安装了Ubuntu&#xff0c;想着可以在服务器接个串口到BMC&#xff0c;然后SSH到服务器的Ubuntu&#xff0c;用minicom来查看串口信息。 准备&#xff1a; 服务器Ubuntu安装mimicom 本机可以ssh到Ubuntu 串口工具PL2302 或者CH3…