Scrapy学习笔记(一): 官方教程解析

最近开始学习爬虫,接触到了scrapy这个框架,简直神器,也不用本身设置多进程啥的了,好用的飞起
看了挺多博客的介绍,感受崔庆才的文章写得很清晰,特别是scrapy的原理,通俗易懂,想看的能够移步到此处 ->css

>> 崔庆才的博客 <<

>> 官方文档在这里 <<

对着官方的教程文档,作一点本身的解析。官方文档使用的是一个名人名言的网站,很适合练手。
废话少说,开整html

  1. 创建项目框架

    D:\netspider>scrapy startproject getquotes

    项目创建好了以后,目录如图所示scrapy

图片描述

其余的文件先不用管,在spider这个文件夹中,创建爬虫文件,myspider.py,包含代码以下ide

import scrapy

class myspider(scrapy.Spider):

# 设置爬虫名称
name = "get_quotes"

# 设置起始网址
start_urls = ['http://quotes.toscrape.com']

def parse(self, response):

    #使用 css 选择要素进行抓取,若是喜欢用BeautifulSoup之类的也能够
    #先定位一整块的quote,在这个网页块下进行做者、名言,标签的抓取
    for quote in response.css('.quote'):
        yield {
            'author' : quote.css('small.author::text').extract_first(),
            'tags' : quote.css('div.tags a.tag::text').extract(),
            'content' : quote.css('span.text::text').extract_first()
        }

scrapy会默认先调用parse()函数进行url的request处理,由于parse()是scrapy的默认回调函数,须要覆写它来进行适配咱们的抓取任务。函数

该网站的元素定位仍是很清晰的:
图片描述学习

运行结果以下:
图片描述网站

成功将做者,名言内容,标签获取到。ui

我的比较喜欢使用xpath进行定位,两种方法均可以,有时候还须要结合使用。scrapy的基本使用方法就是这样,下一篇写一下循环获取与数据保存。url

相关文章
相关标签/搜索