创建第一个爬虫Scrapy

参考Scrapy中文网

下载Scrapy

1. 在Scrapy中文网安装指导中下载

2. Scrapy官网下载

注:由于小编在第一次方法中多次没有安装成功,所以建议在第二种方法中下载

安装指南

参考Scrapy中文网安装指导,对安装不清楚,可以查看视频教程

创建第一个Scrapy爬虫

参考创建一个scrapy项目

1. 创建项目

我是在 E:\debug 文件中创建的Scrapy项目,在这里不建议:shift+右键点击debug–选择在此处打开命令窗口–输入,而是在开始–cmd


image


E:

cd debug

进入目录


scrapy startproject kang

在debug中创建一个kang的文件


image

在spiders中创建py文件,此文件是用来写爬虫的,小编创建的文件是mingyan_splider.py

编写蜘蛛


import scrapy
class mingyan(scrapy.Spider): #需要继承scrapy.Spider类
name = "kang2" # 定义蜘蛛名
    def start_requests(self): # 由此方法通过下面链接爬取页面
        # 定义爬取的链接
        urls = [
            'http://lab.scrapyd.cn/page/1/',
            'http://lab.scrapyd.cn/page/2/',
        ]
        for url in urls:
            yield scrapy.Request(url=url, callback=self.parse) #爬取到的页面如何处理?提交给parse方法处理
    def parse(self, response):
        '''
        start_requests已经爬取到页面,那如何提取我们想要的内容呢?那就可以在这个方法里面定义。
        这里的话,并木有定义,只是简单的把页面做了一个保存,并没有涉及提取我们想要的数据,后面会慢慢说到
        也就是用xpath、正则、或是css进行相应提取,这个例子就是让你看看scrapy运行的流程:
        1、定义链接;
        2、通过链接爬取(下载)页面;
        3、定义规则,然后提取数据;
        就是这么个流程,似不似很简单呀?
        '''
        page = response.url.split("/")[-2]    #根据上面的链接提取分页,如:/page/1/,提取到的就是:1
        filename = 'mingyan-%s.html' % page    #拼接文件名,如果是第一页,最终文件名便是:mingyan-1.html
        with open(filename, 'wb') as f:        #python文件操作,不多说了;
            f.write(response.body)            #刚才下载的页面去哪里了?response.body就代表了刚才下载的页面!
        self.log('保存文件: %s' % filename)      # 打个日志

运行蜘蛛


scrapy crawl kang2

运行的是name,而不是文件夹的名字

输出结果

“`

2019-10-31 10:57:42 [scrapy.core.engine] DEBUG: Crawled (200) <GET http://lab.scrapyd.cn/page/1/> (referer: None)

2019-10-31 10:57:42 [scrapy.core.engine] DEBUG: Crawled (200) <GET http://lab.scrapyd.cn/page/2/> (referer: None)

2019-10-31 10:57:42 [mingyan2] DEBUG: 保存文件: mingyan-1.html

2019-10-31 10:57:42 [mingyan2] DEBUG: 保存文件: mingyan-2.html

2019-10-31 10:57:42 [scrapy.core.engine] INFO: Closing spider (finished)


输出结果如上所示,则表明运行成功。
![image](https://upload-images.jianshu.io/upload_images/9343240-3affa8b03146fc53.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

https://www.jianshu.com/p/c196d1a3012d

Python量化投资网携手4326手游为资深游戏玩家推荐:《晨曦列车(第五章被抢夺的塔拉)攻略,含数据分析

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
Keras
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论