爬虫工作量由小到大的思维转变---<第三十四章 Scrapy 的部署scrapyd+Gerapy>

前言:

scrapy-redis没被部署,感觉讲起来很无力;因为实在编不出一个能让scrapy-redis发挥用武之地的案子;所以,索性直接先把分布式爬虫的部署问题给讲清楚!! 然后,曲线救国式地再在部署的服务器上,讲scrapy redis我感觉这样才好!

正文:

现在还有不少人在用scrapy web进行爬虫管理,但我个人感觉是那玩意儿BUG挺多的;且不灵光!

而Gerapy和scrapy web都是基于scrapyd的,所以 我直接省去了去讲scrapy web的知识点,推荐这个Gerapy;当然了,还有其他的,  例如:"crawlab",也是用于爬虫管理的,你就忽悠忽悠老板,措辞我都给你想好了:' 这玩意儿老好了,真的,先进单位都在用~嘎嘎香;谁用谁知道,贼牛逼!! '-----让他给你买!

比较:Gerapy 和 Scrapy Web

都是用于构建和管理 Scrapy 爬虫项目的工具,但它们有一些区别

  • 1. 功能和用途:Gerapy 是一个全面的 Scrapy 爬虫项目管理平台,提供了完整的爬虫项目管理、任务调度、监控和部署等功能。它不仅提供了界面化的项目管理工具,还支持多用户、权限管理和插件扩展等特性。而 Scrapy Web 是一个基于 Scrapy 的 Web 组件,可为 Scrapy 提供一个可视化界面,用于监控和管理爬虫的运行状态。
  • 2. 界面和可视化:Gerapy 提供了强大的 Web 界面,以图形化和交互式的方式来管理爬虫项目。它提供了项目、爬虫、调度、日志等各个方面的可视化管理界面。而 Scrapy Web 则主要关注在爬虫任务的监控和管理方面,提供了简化的可视化界面来查看爬虫的运行状态、调度任务以及查看日志等。
  • 3. 插件扩展:Gerapy 支持插件扩展,你可以为 Gerapy 添加自定义的功能和工具。它提供了开放的插件接口,允许你开发和集成自己的插件。而 Scrapy Web 没有插件扩展的功能,主要关注于提供爬虫任务的可视化管理和监控功能。
  • 总结来说,Gerapy 是一个功能强大、全面的 Scrapy 爬虫项目管理平台,提供了项目管理、任务调度、监控和部署等多个方面的功能,并支持插件扩展。Scrapy Web 则更专注于提供可视化界面来监控和管理爬虫的运行状态和调度任务.

废话不多说,讲我们的:

安装:

1.创建项目文件(这我就不废话了,mkdir一个文件夹)

2.配置虚拟环境(这我也不废话了,搞个环境依赖包)

3.安装依赖包(python随便升,没问题;我目前py==3.11.X)

pip install scrapy==2.9.0  pip install scrapyd#可自定义要不要按scrapy-redis,上面两个就是环境必须给他装的! 我推荐scrapy装2.9.0,
#别升高了!!原因我前文讲过pip install gerapy#pip install gerapy_auto_extractor
  • 前文链接:爬虫工作量由小到大的思维转变---<第三十三章 Scrapy Redis 23年8月5日后会遇到的bug)>-CSDN博客
  • 关于:gerapy_auto_extractor(要不要安,随便你们,这个无所谓的)
    • gerapy_auto_extractors 是一个用于实现自动提取器(Auto Extractors)功能的 Python 包。它是基于 Gerapy 平台(一个用于构建和管理 Scrapy 爬虫项目的框架)开发的一个插件。
    • 自动提取器是一种用于从网页中自动提取数据的功能。通过配置自动提取器规则,可以指定数据应该如何从 HTML 或其他文档中提取出来,而无需手动编写解析规则。gerapy_auto_extractors 提供了一套规则配置和数据提取的功能,以方便开发人员通过简单的配置来直接提取数据。
    • 使用 gerapy_auto_extractors,你可以轻松地配置自动提取器规则,而无需手动编写 XPath 或其他解析规则。该包还支持在 Gerapy Web 界面中进行规则配置和管理。
    • ps:为了使用 gerapy_auto_extractors,你需要首先安装 Gerapy 平台,并将 gerapy_auto_extractors 作为其插件进行安装和启用。

4.初始化gerapy

进入到项目文件夹内,控制台:

cd <你的项目文件夹内>
gerapy init

初始化完成,出现:

5.创建`数据库迁移文件`

在文件内部:
gerapy migrate

       出现对应的:表示成功!

讲解:

gerapy migrate 命令的主要用途是将数据库结构与 Gerapy 项目的模型定义同步。它提供了以下几个重要的用途和好处:

  1. 数据库迁移管理:gerapy migrate 命令使得数据库迁移变得简单和可控。通过捕捉模型定义的变化,并生成对应的迁移文件,可以轻松地管理数据库表结构的变更和演进。
  2. 模型变更应用:当你在 Gerapy 项目中创建、修改或删除模型(Model)定义时,gerapy migrate 命令可以自动应用这些变更到数据库中。它负责生成并执行相应的迁移操作,确保表结构与模型定义保持一致。
  3. 数据库版本控制:通过 gerapy migrate 命令生成的迁移文件,可以方便地进行数据库版本控制。你可以使用 Git 或其他版本控制系统来管理这些迁移文件,以便记录和追踪数据库结构的变化。
  4. 多环境部署:针对不同的环境(例如开发环境、测试环境、生产环境),你可以使用 gerapy migrate 命令为每个环境执行相应的数据库迁移操作。这样可以确保不同环境的数据库表结构与模型定义保持一致,避免了手动维护多个数据库的麻烦。

6.初始化Gerapy 平台的管理员账户

gerapy initadmin

他会自动生成一个临时的管理员账户,如图:

7.启动 Web 服务器

gerapy runserver 0.0.0.0:8000   #接受全部的ip,端口自定义
#或者gerapy runserver 127.0.0.1:8080   #在本地地址绑定到端口 8080 上

图例:

8.登录gerapy

网络页面(没服务器部署前,用本地127.0.0.1登录):

在浏览器输入: 127.0.0.1:8000

弹出页面:

(第一次登录)输入用户名:admin   密码:admin

登录成功!

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

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

相关文章

2024,启动(回顾我的2023)

零.前言 打开博客想写个年度总结&#xff0c;发现已经半年没有更新文章了&#xff0c;排名从几千掉到了几万&#xff0c;不过数据量还是不错的。 时间过得可真快&#xff0c;2023年是充满动荡的一年&#xff0c;上半年gpt横空出世&#xff0c;下半年各种翻车暴雷吃瓜吃到嘴软…

系统编程--VIM

这里写目录标题 vim三种工作模式进入文本模式的快捷键在命令模式下进行文本编辑 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 vim 三种工作模式 具体可见第二章对vim的详细介绍 …

第二节 linux操作系统安装与配置

一&#xff1a;Vmware虚拟机安装与使用   ①VMware是一个虚拟PC的软件&#xff0c;可以在现有的操作系统上虚拟出一个新的硬件环境&#xff0c;相当于模拟出一台新的PC &#xff0c;以此来实现在一台机器上真正同时运行多个独立的操作系统。   ②VMware主要特点&#xff1a…

ES6 Module详解

✨ 专栏介绍 在现代Web开发中&#xff0c;JavaScript已经成为了不可或缺的一部分。它不仅可以为网页增加交互性和动态性&#xff0c;还可以在后端开发中使用Node.js构建高效的服务器端应用程序。作为一种灵活且易学的脚本语言&#xff0c;JavaScript具有广泛的应用场景&#x…

SELinux 基本原理

本文讲述 SELinux 保护安全的基本原理 首发公号&#xff1a;Rand_cs 安全检查顺序 不废话&#xff0c;直接先来看张图 当我们执行系统调用的时候&#xff0c;会首先对某些错误情况进行检查&#xff0c;如果失败通常会得到一些 error 信息&#xff0c;通过查看全局变量 errno …

基于Flutter构建小型新闻App

目录 1. 概述 1.1 功能概述 1.2 技术准备 1.3 源码地址 2. App首页 2.1 pubspec依赖 2.2 热门首页组件 2.2.1 DefaultTabController 2.2.2 Swiper 2.3 新闻API数据访问 2.4 热门首页效果图 3. 新闻分类 3.1 GestureDetector 3.2 新闻分类效果图 4. 收藏功能 4…

知识付费小程序系统源码:轻松实现 一站啊运营模式+完整的代码包 附安装部署的矫教程

在当今社会&#xff0c;知识的价值愈发凸显。人们对于优质内容的渴求&#xff0c;使得知识付费市场不断扩大。然而&#xff0c;对于许多内容创作者而言&#xff0c;搭建和维护一个知识付费平台的成本较高&#xff0c;技术门槛也相对较高。下面小编来和大家分享一款知识付费小程…

【Reading Notes】(2)

文章目录 FreestyleHip-hop dance and MusicProgrammerMaster Freestyle 都说人的成长有三个阶段&#xff0c;第一个阶段认为自己独一无二&#xff0c;天之骄子&#xff1b;第二个阶段发现自己原来如此渺小&#xff0c;如此普通&#xff0c;沮丧失望&#xff1b;第三阶段&#…

软考高级哪个简单?

对于没有相关知识基础的考生而言&#xff0c;软考高级考试具有一定的难度。软考高级考试包括五个科目&#xff0c;分别是信息系统项目管理师、系统分析师、系统规划与管理师、系统架构设计师以及网络规划设计师。 不同科目的难易度并不会相差太大&#xff0c;不过在高级考试中&…

为什么德国如此重视可持续性有机葡萄酒种植?

可持续性在德国葡萄栽培中越来越重要&#xff0c;它包括对葡萄酒行业的生态、经济和社会问题给予同等的考虑。在过去的几年里&#xff0c;世界范围内出现了许多不同的可持续葡萄酒生产项目。 以可持续发展为导向的酒庄是如何运营的&#xff1f;作为可持续发展整体方法的一部分&…

「MySQL运维常见问题及解决方法」

「MySQL运维常见问题及解决方法」 一、查看MySQL数据库安装路径1.1、方式一 --SHOW VARIABLES LIKE basedir;1.2、方式二 --ps -ef | grep mysql 二、MySQL设置连接数与最大并发数2.1、永久生效--修改my.cnf文件2.2、临时生效--通过命令设置的全局变量 三、其他相关参数设置四、…

一文初识Linux进程(超详细!)

&#x1f3ac;慕斯主页&#xff1a;修仙—别有洞天 ♈️今日夜电波&#xff1a;HEART BEAT—YOASOBI 2:20━━━━━━️&#x1f49f;──────── 5:35 &#x1f504; ◀️ ⏸ ▶️ ☰ …

信息安全评估

评估基础 安全评估是什么? 是针对潜在影响正常执行其职能的行为产色产生干扰或破坏的因素进行识别、评价的过程 广义上是综合的包括测试、检测、测评、审核、评估检查等进行综合评价和预测&#xff1b;狭义的就是某个信息安全风险风评 为什么要做安全评估&#xff1f; 是…

3个值得推荐的WPF UI组件库

WPF介绍 WPF 是一个强大的桌面应用程序框架&#xff0c;用于构建具有丰富用户界面的 Windows 应用。它提供了灵活的布局、数据绑定、样式和模板、动画效果等功能&#xff0c;让开发者可以创建出吸引人且交互性强的应用程序。 HandyControl HandyControl是一套WPF控件库&…

DevC++ easyx实现视口编辑--像素绘图板与贴图系统

到了最终成果阶段了&#xff0c;虽然中间有一些代码讲起来没有意思&#xff0c;纯靠debug,1-1解决贴图网格不重合问题&#xff0c;这次是一个分支结束。 想着就是把瓦片贴进大地图里。 延续这几篇帖子&#xff0c;开发时间也从2023年的4月16到了6月2号&#xff0c;80小时基本…

机器学习(二) -- 数据预处理(2)

系列文章目录 机器学习&#xff08;一&#xff09; -- 概述 机器学习&#xff08;二&#xff09; -- 数据预处理&#xff08;1-3&#xff09; 未完待续…… 目录 系列文章目录 前言 四、【数据清洗】 1、缺失数据的检测与处理 1.1、检测与统计 1.2、处理 1.2.1、删除缺…

Postgresql源码(119)PL/pgSQL中ExprContext的生命周期

前言 在PL/pgSQL语言中&#xff0c;执行任何SQL都需要通过SPI调用SQL层解析执行&#xff0c;例如在SQL层执行表达式的入口&#xff1a; static bool exec_eval_simple_expr(PLpgSQL_execstate *estate,PLpgSQL_expr *expr,Datum *result,bool *isNull,Oid *rettype,int32 *re…

助力成长的开源项目 —— 筑梦之路

闯关式 SQL 自学&#xff1a;sql-mother 免费的闯关式 SQL 自学教程网站&#xff0c;从 0 到 1 带大家掌握常用 SQL 语法&#xff0c;目前一共有 30 多个关卡&#xff0c;希望你在通关的时候&#xff0c;变身为一个 SQL 高手。除了闯关模式之外&#xff0c;这个项目支持自由选…

VuePress、VuePress-theme-hope 搭建个人博客 1【快速上手】 —— 防止踩坑篇

vuePress官网地址 &#x1f449; 首页 | VuePress 手动安装 这一章节会帮助你从头搭建一个简单的 VuePress 文档网站。如果你想在一个现有项目中使用 VuePress 管理文档&#xff0c;从步骤 3 开始。 步骤 1: 创建并进入一个新目录 mkdir vuepress-starter cd vuepress-star…

创建x11vnc系统进程

为方便使用vnc&#xff0c;所以寻找到一个比较好用的vnc服务端那就是x11vnc&#xff0c;索性就创建了一个系统进程 一、环境 系统&#xff1a;银河麒麟v4-sp2-server 软件&#xff1a;x11vnc【linux下】、VNCviewer【win下】 二、安装x11vnc 1、挂载光盘源并修改apt源 mou…