Python网络爬虫与信息提取

(七)Scrapy爬虫的第一个实例(读书笔记)|Python网络

2018-01-23  本文已影响92人  努力奋斗的durian

来源: 网页链接【Python网络爬虫与信息提取】.MOOC. 北京理工大学
https://www.bilibili.com/video/av9784617/index_56.html#page=56

最近更新:2018-01-23

1.产生步骤

演示HTML页面地址:http://python123.io/ws/demo.html

1.1步骤一:建立一个Scrapy爬虫工程

1 )打开cmd:输人scrapy startproject python123,,如下截图:
这里输入的意思是定义一个工程,它的名字叫python123.



2 )根据工程文件存储的路径查看相对应的文件,如下截图


image.png
3)生成目录的介绍,如下截图:

1.2步骤二:在工程中产生一个Scrapy爬虫

1 )是一个面向对象编写的类,这个类叫DemoSpider
2 )由于我们的名字叫demo,所以这个类名也叫demospider,名字也可以叫我们任何想叫的名字.
3 )这个类必须是继承与scrapy.Spider的子类.
4 )这里有个变量叫name,被赋值为demo,说明当前爬虫的名字叫demo.
5 )allowed_domains这个是用户提交给命令行的命名.这个爬虫在爬取网站的时候只能爬取这个域名以下的相关链接.
6 )start_urls以列表的形式包含一个或多个url就是scrapy框架要爬取的初始页面.
7 )def parse是解析页面一个空的方法.
8 )pass是处理响应,可以解析从网上爬取的内容,并形成字典类型,同时对网络中爬取的内容发现其中隐含的新的url.

1.3步骤三:配置产生的spider爬虫

import scrapy


class DemoSpider(scrapy.Spider):
    name = 'demo'
    #allowed_domains = ['python123.io']
    start_urls = ['http://python123.io/ws/demo.html']

    def parse(self, response):
        fname=response.url.split("/")[-1]
        with open(fname,"wb") as f:
            f.write(response.body)
        self.log("saved file %s." % name)

1.4运行爬虫,获取网页

在命令行cmd执行这个命令,输入:scrapy crawl demo 或scrapy bench demo
这里需要注意:我运行过程中,系统提示没有pypiwin32这个库,运行不了,后面我在cmd安装了pypiwin32就可以了,安装方法在cmd输入:pip install pypwin32.


1.5回顾

image.png
上一篇 下一篇

猜你喜欢

热点阅读