Scrapy 爬虫部署与运行:在服务器上部署和运行 Scrapy 爬虫

2023-04-17 00:00:00 部署 运行 爬虫

部署 Scrapy 爬虫到服务器上并运行有多种方式,以下是其中一种具体步骤:

  1. 在服务器上安装 Scrapy 和相关依赖
$ pip install scrapy
  1. 创建 Scrapy 爬虫项目
$ scrapy startproject myspider
$ cd myspider
$ scrapy genspider example pidancode.com

这里创建了一个名为 myspider 的项目,以 pidancode.com 为起始爬取网站的模板生成了一个名为 example 的爬虫。

  1. 编辑 Scrapy 爬虫

编辑 example/spiders/example.py 文件,根据需要修改代码,使其能够爬取到目标数据。例如:

import scrapy

class ExampleSpider(scrapy.Spider):
    name = 'example'
    allowed_domains = ['pidancode.com']
    start_urls = ['http://www.pidancode.com/']

    def parse(self, response):
        for article in response.xpath('//article'):
            yield {
                'title': article.xpath('header/h2/a/text()').get(),
                'url': article.xpath('header/h2/a/@href').get(),
                'content': article.xpath('section/div[2]/p/text()').get()
            }

        next_page = response.xpath('//a[@class="next page-numbers"]/@href')
        if next_page:
            yield response.follow(next_page[0], self.parse)

这个爬虫会爬取 pidancode.com 的文章列表页,并抓取每篇文章的标题、URL 和内容。并且通过 response.follow() 方法跟踪下一页的链接,直到所有页面都被爬取完。

  1. 测试代码

在本地电脑上通过 scrapy crawl example -o output.json 命令,测试爬虫代码是否能够正常爬取到数据。

  1. 将 Scrapy 爬虫部署到服务器上

将 Scrapy 项目文件夹上传到服务器上,例如上传到 /home/user/myspider 下。

  1. 安装并配置 Scrapyd

Scrapyd 是 Scrapy 的部署工具,可以方便地将 Scrapy 项目部署到服务器上,并通过 Web API 进行管理。以下是安装和配置 Scrapyd 的步骤:

$ pip install scrapyd
$ scrapyd-deploy -h # 查看命令帮助
$ cd /home/user/myspider
$ scrapyd-deploy

执行最后一条命令后,按提示输入 Scrapyd Web 界面的用户名和密码,并确认上传位置。

  1. 在服务器上运行 Scrapy 爬虫

通过 Scrapyd Web 界面,选择要运行的爬虫和 Scrapy 项目,点击 Deploy 按钮即可在服务器上启动 Scrapy 爬虫。

  1. 查看爬虫运行结果

可以通过 Scrapyd Web 界面查看运行结果,也可以通过命令行工具 scrapy listscrapy show 查看运行状态和 log 信息。

总结:Scrapy 爬虫部署并不难,步骤大致为创建 Scrapy 项目、编写爬虫代码、测试代码、上传至服务器、安装 Scrapyd、启动爬虫和查看结果。需要注意的是,服务器上需要保证相关依赖和网络环境,并且要定时维护和更新代码和数据。

相关文章