学院教师信息爬取报告(一)

关键词:ubuntu系统、scrapy简单爬取任务


1. 明确目标:明确采集任务

任务:是爬取学院网站上教师列表以及教师详情


2. 规划步骤:分两步采集

借用一个items.py定义两个item类,再分别用Teacherlist、Teacher两个spider抓取教师信息


3. 项目准备:观察所要爬取页面的框架结构

学院教师信息爬取报告(一)_第1张图片
教师列表
  • 图示中每个\

  • 标签下包含教师列表信息,所以以其作为链接迭代入口。

  • 详情页因为不涉及动态页面的抓取,所以只考虑页面层级问题,就是怎么从教师列表页进入详情页。


4. 项目实施:构建爬虫框架

  • 建立爬虫框架
    * scrapy startproject teacher

学院教师信息爬取报告(一)_第2张图片
爬虫结构图示
注:建立时没有.pyc文件

  • 根据你的需求在items.py文件中定义元数据,这里直接定义两个模块。

学院教师信息爬取报告(一)_第3张图片
item模块定义

注意:两个类定义需要用空行隔开,当然注意使用同一种方式缩进

  • 编写Teacherlist的spider文件
学院教师信息爬取报告(一)_第4张图片
教师列表爬虫代码

注:python时使用缩进来区分代码块,使用空行表示下一个类、函数等的开始

  • 编写Teacher的spider文件

学院教师信息爬取报告(一)_第5张图片
教师详情爬虫代码

注:parse函数名不能更改,留意页面层级结构


5. 项目调试:通过观察运行后代码分析修改代码

    *   scrapy  crawl 爬虫名

这里尤其注意未定义,xpath书写,到底是item.xpath()还是response.xpath(),以及缩进(空格、tap混用,是否整齐),英文:(中英文输入)等错误


6. 数据保存:可选择json、xml、csv等格式保存

运行代码
* scrapy crawl 爬虫名 -o 文件名.格式


注意:文件夹权限
root用户该文件夹上级目录下使用命令
* sudo chmod 777 文件名

你可能感兴趣的:(学院教师信息爬取报告(一))