0%

在阿里云上测试Gerapy教程

前几天,大才发了一个自己写的框架,介绍地址在这里, GIT 地址在这里

今天在阿里云上试用了一下,在这里做一个简单的说明。

1、配置环境

阿里云的版本是 2.7.5,所以用 pyenv 新安装了一个 3.6.4 的环境,安装后使用 pyenv global 3.6.4 即可使用 3.6.4 的环境,我个人比较喜欢这样,切换自如,互不影响。 如下图: 接下来按照大才的文章,pip install gerapy 即可,这一步没有遇到什么问题。有问题的同学可以向大才提 issue。

2. 开启服务

首先去阿里云的后台设置安全组 ,我的是这样: 然后到命令窗口对 8000 和 6800 端口放行即可。 接着执行

gerapy init cd gerapy gerapy migrate # 注意下一步 gerapy runserver 0.0.0.0:8000 【如果你是在本地,执行 gerapy runserver 即可,如果你是在阿里云上,你就要改成前面这样来执行】

现在在浏览器里访问:ip:8000 应该就可以看到主界面了 里面的各个的含义见大才的文章。

3.创建项目

在 gerapy 下的 projects 里面新建一个 scrapy 爬虫,在这里我搞的是最简单的:

scrapy startproject gerapy_test cd gerapy_test scrapy genspider baidu www.baidu.com

这样就是一个最简单的爬虫了,修改一个 settings.py 中的 ROBOTSTXT_OBEY=False, 然后修改一个 spiders 下面的 baidu.py, 这里随意,我这里设置的是输出返回的 response.url

4.安装 scrapyd

pip install scrapyd

安装好以后,命令行执行

scrapyd

然后浏览器中打开 ip:6800,如果你没有修改配置,应该这里会打不开,clients 那里配置的时候,也应该会显示为 error,就像这样: 后来找了一下原因发现 scrapyd 默认打开的也是 127.0.0.1 所以这个时候就要改一下配置,具体可以参考这里, 我是这么修改:

vim ~/.scrapyd.conf [scrapyd] bind_address = 0.0.0.0

在刷新一下,就会看到前面 error 变成了 normal

5. 打包,部署,调度

这几步大才的文章里都有详细说明,打包完,部署,在进入 clients 的调度界面,点击 run 按钮即可跑爬虫了 可以看到输出的结果了。

6.结语

建议大家可以试着用一下,很方便,我这里只是很简单的使用了一下。