【Python3.4.3】Scrapy1.2.0网络爬虫使用入门(一)

来源:赵克立 分类: Python 标签:Python网络爬虫Scrapy发布时间:2016-12-04 16:11:12浏览:511
版权声明:
本文为博主原创文章,转载请声明原文链接...谢谢。o_0。
更新时间:
2016-12-04 20:56:06

安装方法就不多说啦,很多坑,如果有遇到问题的可以参考下面文章试试能不能解决

[Scrapy(1)安装方法]Python3.4.3 安装scrapy时的各种问题

测试环境win7 64位  抓取指定博客的文章

使用方法找一个空目录,按着shift 点鼠标右键,点->在此处打开命令行

输入下面命令创建一个项目

scrapy startproject blog

执行后会生成一个blog目录里面有一个blog目录和scrapy.cfg配置文件

主要的项目文件在blog这个目录里

blob.png

开始抓取内容前我们要确定需要什么内容,从而要先创建要抓取的item

打开上图中的items文件输入下面代码,我们要抓取文章的标题和链接,所以在这个里面定义

# -*- coding: utf-8 -*-
# Define here the models for your scraped items
#
# See documentation in:
# http://doc.scrapy.org/en/latest/topics/items.html
import scrapy
class ArticleItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    title = scrapy.Field()
    link = scrapy.Field()
    pass

然后打开spiders目录创建article.py文件,这个是蜘蛛文件,输入下面代码

# -*- coding: utf-8 -*-
import scrapy
from blog.items import ArticleItem
class ArticleSpider(scrapy.Spider):
    name = "article"#这个地方要和蜘蛛名字一至,要注意一下
    allowed_domains = ["xxxx.com"]
    start_urls = (
        "https://www.xxxx.com/list1.html",
    )
    def parse(self, response):
        for sel in response.xpath('//dl/dd'):
            item = ArticleItem()
            item['title'] = sel.xpath('a/text()').extract()
            item['link'] = sel.xpath('a/@href').extract()
            # print(item)
            yield item

里面的选取标题和链接的方法是用xpath的语法,如果不会的请自行查百度,谷歌

然后返回到项目根目录,如下

blob.png

以上面方式打开命令行,输入下面命令运行article这个蜘蛛

scrapy crawl article -o article.json

运行蜘蛛并且把结果保存到项目根目录中以article.json为名字,内容为抓取到的json数据
blob.png

内容为json格式,直接复制到谷歌浏览器的控制台运行就可以看结构

blob.png

blob.png


微信号:kelicom QQ交流群:215861553
点击更换验证码
留言