• 搭建pyspider爬虫服务


    1. 环境准备

    首先yum更新

    yum update -y
    

      安装开发编译工具

    yum install gcc gcc-c++ -y
    

      安装依赖库

    yum install python-pip python-devel python-distribute libxml2 libxml2-devel python-lxml libxslt libxslt-devel openssl openssl-devel -y
    

      升级pip

    pip install --upgrade pip
    

      

    2.部署 mariadb

     

    由于 CentOS 7 中 MySQL 数据库已从默认的程序列表中移除,我们使用 mariadb 代替。
    yum install mariadb-server mariadb -y
    

      启动 mariadb 服务

    systemctl start mariadb
    

      设置 root 密码

    默认的root用户密码为空,你可以使用以下命令来创建 root 用户的密码:
    (该步骤也可以跳过,password 后的 hKyAvK55 可以改为任何你希望设置的密码)
    mysqladmin -u root password "hKyAvK55"
    

      检查是否安装成功

    现在你可以尝试通过以下命令来连接到 Mysql 服务器 
     
    mysql -u root -p
    

      

    然后输入您刚才设置的密码 ( 默认:hKyAvK55 ),如果一切正常,您应该可以在命令行看到以 MariaDB [(none)]> 或 mysql> 开头的提示了,说明连接成功。
    此时输入 SHOW DATABASES; 并回车,应该可以看到类似下面这样的输出,说明一切正常。
    mysql> SHOW DATABASES;
    +----------+
    | Database |
    +----------+
    | mysql    |
    | test     |
    +----------+
    2 rows in set (0.13 sec)
    

      完成后,可以通过快捷键 Ctrl+C 或命令行键入 exit 来退出,进入下一步。

    3.部署 redis

    下载、解压安装包

    下载安装包

    wget http://download.redis.io/redis-stable.tar.gz
    

    解压安装包

    tar -xzvf redis-stable.tar.gz
    

    移动解压包到 /usr/local 内

    mv redis-stable /usr/local/redis
    

    编译安装

    cd /usr/local/redis
    make
    make install
    

      设置 redis 配置

    设置配置文件路径

    mkdir -p /etc/redis
    cp /usr/local/redis/redis.conf /etc/redis/redis.conf
    

      修改 /etc/redis/redis.conf 文件的 daemonize 配置项为如下:

    daemonize yes
    

      启动 redis 服务

    /usr/local/bin/redis-server /etc/redis/redis.conf
    

    4.部署 pyspider

    安装依赖
    pip install --upgrade chardet
    easy_install mysql-connector==2.1.3
    easy_install redis
    

    安装 pyspider

    pip install pyspider
    

    配置 pyspider

    首先创建配置目录
    mkdir /etc/pyspider
    
    然后 /etc/pyspider 目录下创建 pyspider.conf.json,参考下面的内容。
    具体配置的说明文档请参考 官方文档
    {
      "taskdb": "mysql+taskdb://root:hKyAvK55@127.0.0.1:3306/taskdb",
      "projectdb": "mysql+projectdb://root:hKyAvK55@127.0.0.1:3306/projectdb",
      "resultdb": "mysql+resultdb://root:hKyAvK55@127.0.0.1:3306/resultdb",
      "message_queue": "redis://127.0.0.1:6379/db",
      "webui": {
        "username": "root",
        "password": "hKyAvK55",
        "need-auth": true
      }
    }
    
    其中 mysql 配置中的 root 为您 mysql 的用户名, root:后面的 hKyAvK55 为您刚设置的密码。
    webui 配置中的 username 及 password 为您访问 WebUI 时候需要的用户名,你也可以不设置用户名密码,直接将 need-auth 设为 false 即可。
    启动服务
    pyspider -c /etc/pyspider/pyspider.conf.json
    如果一切正常,现在访问 http://119.29.152.235:5000,您应该可以看到 pyspider dashboard 的首页了。
    服务能够正常启动后,我们需要让它能够在后台运行,您可以通过以下命令让服务在后台运行
    nohup pyspider -c /etc/pyspider/pyspider.conf.json &
    也可以使用官方推荐的 Supervisor 来启动,这里就不详细介绍了,具体用法可以参考 Supervisor 的文档

    5.部署完成

    访问服务
    此时您可以访问 http://119.29.152.235:5000 使用您的爬虫来搜集数据了,具体 pyspider 爬虫脚本的编写及使用教程可以参考 网上资料

    6.大功告成

    恭喜您已经完成了搭建 PySpider 爬虫服务的学习
  • 相关阅读:
    abap开发报表的简单过程
    有关innerHTML的知识
    MS SQL中的return&output的學習
    js获取下拉列表选中项的值和文本(select)以及获取单选按钮(radio)组的值和修改选中项[转]
    ASP.NET AJAX Control Toolkit
    VB.net下有个函数strconv可以进行简体繁体转换
    JavaScript:prototype属性使用说明
    [转]一份ASP内存的释放的实验报告
    什么是 Virtual Machine Additions(虚拟机附加安装模块)?
    Trigger&Procedure的應用
  • 原文地址:https://www.cnblogs.com/pejsidney/p/8610839.html
Copyright © 2020-2023  润新知