团队-爬取豆瓣电影TOP250-设计文档

团队成员:

  张晓亮,邵文强,宁培强,潘新宇,邵翰庆,李国峰,张立新

概要设计思路(https://github.com/Wooden-Robot/scrapy-tutorial):

     声明item:Items
(爬取的主要目标就是从非结构性的数据源提取结构性数据,例如网页。 Scrapy spider可以以python的dict来返回提取的数据.虽然dict很方便,并且用起来也熟悉,但是其缺少结构性,容易打错字段的名字或者返回不一致的数据,尤其在具有多个spider的大项目中。
为了定义常用的输出数据,Scrapy提供了 Item 类。 Item 对象是种简单的容器,保存了爬取到得数据。 其提供了 类似于词典(dictionary-like) 的API以及用于声明可用字段的简单语法。)

     Spider
(class scrapy.spider.Spider
Spider是最简单的spider。每个其他的spider必须继承自该类(包括Scrapy自带的其他spider以及您自己编写的spider)。 Spider并没有提供什么特殊的功能。 其仅仅请求给定的 start_urls/start_requests ,并根据返回的结果(resulting responses)调用spider的 parse 方法。)

    使用xpath语法来提取我们所需的信息(可以在W3Schlool上参考)

    点击工具栏左上角的类鼠标符号图标或者Ctrl + Shift + c在页面中点击我们想要的元素即可在工具栏中看到它在网页HTML源码中所处的位置。

大致内容:

     表的设计

     获取每一页的内容

     获取当前页每一部电影的链接

     获取所有页的url连接

     获取当前页的字段值

     获取电影的排行次数

     获取电影名称

     获取导演名称

     获取电影评分

     获取电影描述

运行爬虫:

    打开cmd运行下列命令:

    scrapy crawl douban_movie_top250 -o douban.csv(douban_movie_top250即为我们刚刚写的爬虫的name, 而-o douban.csv是scrapy提供的将item输出为csv格式的快捷方式)

自动翻页:

  1. 在页面中找到下一页的地址;
  2. 自己根据URL的变化规律构造所有页面地址。

测试:

    进行最后的测试,检查代码的严谨性与程序的可执行性。

原文地址:https://www.cnblogs.com/Lindom/p/7567969.html