Jquery中文网 www.jquerycn.cn
Jquery中文网 >  Python编程  >  Python入门  >  正文 python的爬虫框架scrap是什么?怎么用?

python的爬虫框架scrap是什么?怎么用?

发布时间:2021-01-08   编辑:www.jquerycn.cn
jquery中文网为您提供python的爬虫框架scrap是什么?怎么用?等资源,欢迎您收藏本站,我们将为您提供最新的python的爬虫框架scrap是什么?怎么用?资源

小编发觉不管python上是需要什么样子的应用,总归都是需要一个平台框架做搭建的,因此,关于这个框架什么的,内容有很多,一次性告诉大家很多内容,相信大家也不容易消化理解,因此,小编罗列了最常见的框架,以及大家本身经常能遇到的框架作补充,相信可以完善大家的python学习,一起来看下吧~

关于Scrapy 简介

Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。

安装

linux 和 Mac 系统下,可使用 pip安装。

pip install scrapy

Windows上的安装方式

conda install -c conda-forge scrapy

Scrapy 基本使用

第一步,创建项目

scrapy 提供了一些命令行工具,可直接生成项目代码。我们可直接使用如下命令来生成项目代码

scrapy startproject v6_scrapy

第二步,编写Spider

sipders目录中,添加我们的爬虫文件toutiao_spider.py,内容如下:

# -*- coding:utf-8 -*-
import scrapy
 
 
class ToutiaoSpider(scrapy.Spider):
    name = 'toutiao'
    start_urls = [
        'https://toutiao.io/c/ai?page=1',
    ]
 
    def parse(self, response):
        """
        实现html解析
        :param response:
        :return:
        """
        papers = response.xpath('//a[@rel="external"]')
        for paper in papers:
            title = paper.xpath('./@title').extract()[0]
            href = 'https://toutiao.io%s' % paper.xpath('./@href').extract()[0]
        
        print(title, href)

在完成之后,执行如下代码启动爬虫:

scrapy crawl toutiao

第三步,定义item

scrapy 使用Item类来结构化数据,以方便对数据的操作。

class ToutiaoItem(scrapy.Item):
    title = scrapy.Field()
href = scrapy.Field()

第四步,构建 Item pipeline 持久化到文件

我们看下如何将爬取到的数据保存到文件,代码如下:

class V6ScrapyFilePipeline(object):
 
    def __init__(self):
        self.file = open('toutiao.json', 'wb')
 
    def process_item(self, item, spider):
        if item['title']:
            line = json.dumps(dict(item)) "\n"
            self.file.write(line.encode())
            return item
        else:
            raise DropItem('在[%s]item中,没有title关键字'%item)

以上就是关于我们去安装使用这个框架的全部内容了,另外也大致的给大家讲解使用这个架框去爬取的一些内容,相信大家如果有需要的时候,看下这篇文章内容即可哦~

您可能感兴趣的文章:
《Python2爬虫入门教程指南》(系列教程)
Python 爬虫学习系列教程
python爬虫一般都爬什么信息
python学会后做什么
爬虫工程师与django工程师有区别吗
Python2爬虫入门之如何学习爬虫
python的爬虫是什么意思
怎么用python的爬虫框架scrapy的命令行?
python的爬虫框架scrap是什么?怎么用?
Python2爬虫入门:爬虫基础知识

[关闭]