The first scrapy project

第一个爬虫项目

创建项目

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

scrapy startproject ielts_online_spider

制作爬虫

生成一个爬虫

scrapy genspider ielts_online "ieltsonlinetests.com"

将start_urls的值修改为需要爬取的第一个url

    start_urls = ['https://ieltsonlinetests.com/ielts-recent-actual-test-answers-vol-6-reading-practice-test-1/solution']

修改parse()方法

    def parse(self, response):
        filename = "reading_page1.html"
        open(filename, 'w').write(str(response.body))

然后运行一下看看,在mySpider目录下执行:

scrapy crawl ielts_online

查看HTML文件可以看到已经写出

取爬虫数据

构建自己的spider存储对象

打开mySpider目录下的items.py

Item 定义结构化数据字段,用来保存爬取到的数据,有点像Python中的dict,但是提供了一些额外的保护减少错误。

可以通过创建一个 scrapy.Item 类, 并且定义类型为 scrapy.Field的类属性来定义一个Item(可以理解成类似于ORM的映射关系)。

接下来,创建一个ItcastItem 类,和构建item模型(model)。

取数据

取出所有的文章,然后遍历逐步的写入到文章的内容中去

执行测试

直接使用returns的时候,可以将return的内容写到不同的类型的文件中去。

Last updated

Was this helpful?