Scrapy爬虫部署、相关api调用、以及gerapy的作用和使用流程总结

scrapy部署介绍相关的中文文档地址

https://scrapyd.readthedocs.io/en/latest/

安装相关库

scrapyd

是运行scrapy爬虫的服务程序,它支持以http命令方式发布、删除、启动、停止爬虫程序。而且scrapyd可以同时管理多个爬虫,每个爬虫还可以有多个版本

pip3 install scrapyd

scrapyd-client

发布爬虫需要使用另一个专用工具,就是将代码打包为EGG文件,其次需要将EGG文件上传到远程主机上这些操作需要scrapyd-client来帮助我们完成

pip3 install scrapyd-client

安装完成后可以使用如下命令来检查是否安装成功

scrapyd-deploy -h

修改scrapy项目目录下的scrapy.cfg配置文件

首先需要修改scrapyd.egg (项目的配置文件)

[deploy]

url=http://localhost:6800

project=项目名称

本地部署本地部署

项目部署相关命令: 注意这里是项目的名称而不是工程的名称

scrapyd-deploy -p <项目名称>

也可以指定版本号

scrapyd-deploy -p <项目名称> --version <版本号>

爬虫运行相关命令详情见:

https://scrapyd.readthedocs.io/en/latest/api.html

远端部署

配置服务器

step1 购买linux系统服务器

step2 在终端上登录服务器

在这里插入图片描述
step3 配置项目运行环境

  • 配置python环境(ubuntu自带python3环境))

  • 安装pip3:sudo apt install python3-pip

  • 安装scrapy:pip3 install scrapy -i https://pypi.douban.com/simple/

    • 如果安装失败添加如下依赖:
    • sudo apt-get install python-dev python-pip libxml2-dev libxslt1-dev zlib1g-dev libffi-dev libssl-dev
  • 安装scrapyd: pip3 install scrapyd

  • 安装scrapyd-client: pip3 install scrapyd-client

  • 添加爬虫运行的三方库:

    • pip3 install requests
    • pip3 install pymysql
    • pip3 install pymongodb

step4 修改scrapyd的配置文件,允许外网访问

  • 查找配置文件的路径:find -name default_scrapyd.conf
  • 修改配置文件: sudo vim 路径
    在这里插入图片描述
    在这里插入图片描述
    注意:此时启动scrapayd服务6800端口还不能访问

step5 要去服务器安全组配置

  • 进入服务安全组选项添加安全组
    在这里插入图片描述
  • 添加成功后,点击修改规则,添加如下信息(配置目的:允许访问6800端口)

在这里插入图片描述
在这里插入图片描述

  • 完成后返回到云主机菜单,找到配置安全组菜单,跟换为刚才添加的安全组

在这里插入图片描述

  • 最终完成后,在浏览器中输入ip地址和端口,显示如下图,说明配置成功

在这里插入图片描述
step6 最后部署爬虫项目到服务器:

首先需要修改scrapyd.egg (项目的配置文件)

[deploy]

url = http://118.24.255.219:6800

project=项目名称

step7 项目部署

scrapyd-deploy -p <项目名称>

也可以指定版本号

scrapyd-deploy -p <项目名称> --version <版本号>

数据库相关

#### 如果涉及到数据库,则需要在远程服务器中安装mysql

sudo apt update

sudo apt-get install mysql-server mysql-client

紧接着根据提示设置数据数据库密码

修改配置文件允许外网访问

找到mysql配置文件并做如下修改:允许远程连接

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

bind-address= 127.0.0.1 

注释掉或则修改为

bind-address= 0.0.0.0

授权root账户允许远程访问:

grant all privileges on *.* to root@'%' identified by 'password' with grant option;

注意:如果还是不能远程访问就重启mysql服务

sudo service mysql stop sudo service mysql start

数据库的迁移和数据迁移
navicate可视化工具进行数据库的迁移,和查看操作

mongodb数据库的安装

sudo apt-get install mongodb

启动:

sudo service mongodb start 
连接客户端报错参考如下网址: 
(输入:sudo systemctl enable mongodb) mongo

修改配置文件的路径

sudo vim /etc/mongodb.conf

redis数据库的安装

在远端服务器上安装redis数据库

  • step1:

    • cd ~ (进入指定的目录)
  • step2:

    • 下载redis数据库压缩包:

    wget http://download.redis.io/releases/redis-4.0.10.tar.gz

  • step3:

    • 解压下载的文件:
      tar -zxvf redis-4.0.10.tar.gz
  • step4:

    • 复制,放到/usr/local目录下面( 先创建文件夹/usr/local/redis/ )
    • mv ./redis-4.0.11/* /usr/local/redis/
  • step5:进入redis目录

    • cd /usr/local/redis/
  • step6:

    • sudo make
    • sudo make test
    • sudo make install
  • step7:

    • sudo cp /usr/local/redis/redis.conf /etc/redis/
  • step8:

    • 修改配置文件,允许外网访问
      sudo vim redis.cnf
      • 将配置文件中的bind修改为:
        bind=0.0.0.0
  • step9:

    • 启动redis服务:
      sudo redis-server redis.cnf
  • step10:链接客户端

    • redis-cli -h ip -p port

Gerapy安装部署

gerapy 详解
介绍:
Gerapy 是一款分布式爬虫管理框架,支持 Python 3,基于 Scrapy、Scrapyd、Scrapyd-Client、Scrapy-Redis、Scrapyd-API、Scrapy-Splash、Jinjia2、Django、Vue.js 开发,Gerapy 可以帮助我们:

  • 更方便地控制爬虫运行
  • 更直观地查看爬虫状态
  • 更实时地查看爬取结果
  • 更简单地实现项目部署
  • 更统一地实现主机管理
  • 提供在线编辑代码功能

Greapy 安装和使用

pip3 install gerapy

查看是否安装成功

出现如下结果图说明安装成功

在这里插入图片描述
初始化gerapy

gerapy init
执行完毕之后,便会在桌面下生成一个名字为 gerapy 的文件夹,接着进入该文件夹,可以看到有一个 projects 文件夹

进入到gerapy文件夹下

cd gerapy

执行(会在gerapy目录下生产一个sqlite数据库,同时创建数据表,数据库中会保存各个主机配置信息、部署版本等)

gerapy migrate

运行gerapy服务

gerapy runserver

访问gerapy管理界面在浏览器中输入如下网址

http://127.0.0.1:8000

此时,服务器启动,可以在浏览器中输入127.0.0.1:8000,此时即可看到以下界面:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值