Scrapy 爬虫部署与运行:在服务器上部署和运行 Scrapy 爬虫
部署 Scrapy 爬虫到服务器上并运行有多种方式,以下是其中一种具体步骤:
- 在服务器上安装 Scrapy 和相关依赖
$ pip install scrapy
- 创建 Scrapy 爬虫项目
$ scrapy startproject myspider
$ cd myspider
$ scrapy genspider example pidancode.com
这里创建了一个名为 myspider
的项目,以 pidancode.com
为起始爬取网站的模板生成了一个名为 example
的爬虫。
- 编辑 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()
方法跟踪下一页的链接,直到所有页面都被爬取完。
- 测试代码
在本地电脑上通过 scrapy crawl example -o output.json
命令,测试爬虫代码是否能够正常爬取到数据。
- 将 Scrapy 爬虫部署到服务器上
将 Scrapy 项目文件夹上传到服务器上,例如上传到 /home/user/myspider
下。
- 安装并配置 Scrapyd
Scrapyd 是 Scrapy 的部署工具,可以方便地将 Scrapy 项目部署到服务器上,并通过 Web API 进行管理。以下是安装和配置 Scrapyd 的步骤:
$ pip install scrapyd $ scrapyd-deploy -h # 查看命令帮助 $ cd /home/user/myspider $ scrapyd-deploy
执行最后一条命令后,按提示输入 Scrapyd Web 界面的用户名和密码,并确认上传位置。
- 在服务器上运行 Scrapy 爬虫
通过 Scrapyd Web 界面,选择要运行的爬虫和 Scrapy 项目,点击 Deploy 按钮即可在服务器上启动 Scrapy 爬虫。
- 查看爬虫运行结果
可以通过 Scrapyd Web 界面查看运行结果,也可以通过命令行工具 scrapy list
和 scrapy show
查看运行状态和 log 信息。
总结:Scrapy 爬虫部署并不难,步骤大致为创建 Scrapy 项目、编写爬虫代码、测试代码、上传至服务器、安装 Scrapyd、启动爬虫和查看结果。需要注意的是,服务器上需要保证相关依赖和网络环境,并且要定时维护和更新代码和数据。
相关文章