0%

Docker运行scrapy爬虫

爬虫哪有在自己电脑上运行的?

拥有一台服务器

安装Docker

官方教程

1
2
3
Centos:

wget -q0- https://get.docker.com/ | sh

拉取Python的Docker镜像

由于后续的爬虫程序要求,这里使用的使python版本只要大于3.6即可

1
docker pull python:3.7.4

启动容器

1
docker run -it --name pytest -v ~/weibo-search:/root/weibo_py python:3.7.4 bash

参数设置:

-it:使容器具备交互性并与终端进行连接

–name:为容器指定名称

-v:将本地文件夹~/weibo-search与容器文件夹/root/weibo_py共享

python:3.7.4:要运行的镜像名+TAG

bash:进入容器命令行

执行爬虫相关命令

爬虫程序源代码

按照程序要求,在settings.py文件中设置好爬虫参数,然后启动爬虫

1
scrapy crawl search -s JOBDIR=crawls/search

退出容器并使程序在后台运行

Ctrl + PQ 即可退出容器但不杀死程序


Temporary failure in name resolution

有几天没连,再连上以后docker里这样了,宿主还没事

解决:

1
2
宿主机:
sudo service docker restart