步骤1、环境准备

  右击Ubuntu操作系统桌面,从弹出菜单中选择【Open in Terminal】命令 打开终端。

  通过【cd /home】切换到home目录下。【ls】查看该目录下的所有内容。

Scrapy框架的安装及使用

 

图1 切换目录

  【mkdir scrapy】在home目录下创建scrapy文件夹。

Scrapy框架的安装及使用
图2 创建文件夹

步骤2、Scrapy安装

  【pip install scrapy】安装爬虫框架Scrapy,(该框架虚拟机已安装,无需执行,制作参考)

Scrapy框架的安装及使用
图3 安装Scrapy

  【Scrapy】已安装成功,版本为1.5

Scrapy框架的安装及使用
图4 验证Scrapy

步骤3、Scrapy操作

  在开始爬取之前,必须创建一个新的scrapy项目

  【cd scrapy】切换至scrapy的目录

  【scrapy startproject movie】创建scrapy项目,名为movie.

Scrapy框架的安装及使用
图5 创建Scrapy项目

  【tree】查看项目结构

  scrapy.cfg 项目的配置信息,主要为Scrapy命令行工具提供一个基础的配置信息。(真正爬虫相关的配置信息在settings.py文件中)

  items.py 设置数据存储模板,用于结构化数据,如:Django的Model

  pipelines 数据处理行为,如:一般结构化的数据持久化

  settings.py 配置文件,如:递归的层数、并发数,延迟下载等

  spiders 爬虫目录,如:创建文件,编写爬虫规则

Scrapy框架的安装及使用
图6 项目结构

  定义要抓取的数据

  Item 是保存爬取到的数据的容器;其使用方法和python字典类似, 并且提供了额外保护机制来避免拼写错误导致的未定义字段错误。

  【vim item.py】编辑item文件。

Scrapy框架的安装及使用
图7 数据item

  回车后按【i】进入编辑状态。编辑信息如下。获取电影名字。

Scrapy框架的安装及使用
图8 编辑信息

  编辑完毕后,按【esc】退出编辑状态,【:wq】保存并退出编辑框。

  【cd spider】进入spider目录,【vim meiju.py】回车后创建并编辑meiju文件。

Scrapy框架的安装及使用
图9 创建Python文件

  回车后按【i】进入编辑状态,编辑如下信息。

  Spider是用户编写用于从单个网站(或者一些网站)爬取数据的类。

  其包含了一个用于下载的初始URL,如何跟进网页中的链接以及如何分析页面中的内容, 提取生成 item 的方法。

  为了创建一个Spider,您必须继承 scrapy.Spider 类,且定义以下三个属性:

  name: 用于区别Spider。 该名字必须是唯一的,您不可以为不同的Spider设定相同的名字。

  start_urls: 包含了Spider在启动时进行爬取的url列表。 因此,第一个被获取到的页面将是其中之一。 后续的URL则从初始的URL获取到的数据中提取。

  parse() 是spider的一个方法。 被调用时,每个初始URL完成下载后生成的 Response 对象将会作为唯一的参数传递给该函数。 该方法负责解析返回的数据(response data),提取数据(生成item)以及生成需要进一步处理的URL的 Request 对象。

Scrapy框架的安装及使用
图10 编辑Python文件

  【cd ../..】切换项目的目录。【scrapy crawl meiju】运行该项目

Scrapy框架的安装及使用
图11 运行Scrapy项目

  根据打印的信息判断请求成功。

Scrapy框架的安装及使用
图12 信息打印

  在浏览器中输入URL,根据判断得知。

  【//ul[@class=”top-list fn-clear”]/li】所有的电影信息

  【./h5/a/@title】电影的名称

Scrapy框架的安装及使用
图13 分析URL

  再次编辑meiju文件。

Scrapy框架的安装及使用
图14 编辑Python文件

  修改程序如下。通过选择器(Selectors)用XPath来提取数据

Scrapy框架的安装及使用
图15 选择器

  编辑完毕后,按【esc】退出编辑状态,【:wq】保存并退出编辑框。

  【cd ..】切换上级目录。

  【vim settings.py】编辑文件,设置下载的数量。

Scrapy框架的安装及使用
图16 编辑settings.py文件

  回车后按【i】进入编辑状态。编辑信息如下。获取电影名字。(只需在文件中找到该行,取消掉注释修改大小即可,)

Scrapy框架的安装及使用
图17 编辑文件

  编辑完毕后,按【esc】退出编辑状态,【:wq】保存并退出编辑框。

  【vim pipelines.py】编辑pipelines.py文件。

Scrapy框架的安装及使用
图18 编辑pipelines文件

  回车后按【i】进入编辑状态。编辑信息如下。将电影名字数据写入txt文件中。

Scrapy框架的安装及使用
图19 数据写入

  编辑完毕后,按【esc】退出编辑状态,【:wq】保存并退出编辑框。

  【cd ..】切换至上级目录。

  【scrapy crawl meiju】运行项目进行爬取

Scrapy框架的安装及使用
图20 运行Scrapy项目

  【ls】查看该目录下生成一个movies.txt文件。

  【cat movies.txt】爬取到前100个电影名字。

Scrapy框架的安装及使用
图21 查看运行效果

相关文章:

  • 2021-08-10
  • 2021-06-24
  • 2022-01-13
  • 2022-01-09
  • 2021-04-19
  • 2022-01-23
猜你喜欢
  • 2022-12-23
  • 2021-10-01
  • 2021-09-27
  • 2021-10-06
  • 2021-08-21
  • 2021-06-21
  • 2021-11-29
相关资源
相似解决方案