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)
以上就是关于我们去安装使用这个框架的全部内容了,另外也大致的给大家讲解使用这个架框去爬取的一些内容,相信大家如果有需要的时候,看下这篇文章内容即可哦~
python爬虫框架scrap_python的爬虫框架scrap是什么?怎么用?相关推荐
- python 爬虫框架_Python网络爬虫-scrapy框架的使用
1. Scrapy 1.1 Scrapy框架的安装 Scrapy是一个十分强大的爬虫框架,依赖的库比较多,至少需要依赖的库有Twisted .lxml和pyOpenSSL.在不同的平台环境下,它所依赖 ...
- python什么时候用框架_python爬虫-什么时候选择selenium框架框架?
不知不觉已经从事Python编程开发5年了,Python刚开始其实不是很起眼,但是随着大数据越来越活,现在Python也越来越火了,但是目前我主要从事的Python工作还是以数据挖掘.数据爬虫技术深度 ...
- Python 网络爬虫笔记9 -- Scrapy爬虫框架
Python 网络爬虫笔记9 – Scrapy爬虫框架 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:Py ...
- Python 框架 之 Scrapy 爬虫(二)
Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中.其最初是为了页面抓取 (更确切来说, 网络抓取)所设计的, 也可以应 ...
- 【Python笔记】网络爬虫——常用框架介绍以及 Scrapy 框架使用
网络爬虫开发常用框架 Scrapy 爬虫框架 Crawley 爬虫框架 PySpider 爬虫框架 Scrapy 爬虫框架的使用 搭建 Scrapy 爬虫框架 1. 安装 Twisted 模块 2. ...
- Python网络爬虫数据采集实战:Scrapy框架爬取QQ音乐存入MongoDB
通过前七章的学习,相信大家对整个爬虫有了一个比较全貌的了解 ,其中分别涉及四个案例:静态网页爬取.动态Ajax网页爬取.Selenium浏览器模拟爬取和Fillder今日头条app爬取,基本 ...
- python爬虫设计模式_Python爬虫进阶一之爬虫框架概述
综述 爬虫入门之后,我们有两条路可以走. 一个是继续深入学习,以及关于设计模式的一些知识,强化Python相关知识,自己动手造轮子,继续为自己的爬虫增加分布式,多线程等功能扩展.另一条路便是学习一些优 ...
- 【Python自学】七大超强爬虫框架,你值得拥有!!
实现爬虫技术的编程环境有很多种,Java.Python.C++等都可以用来爬虫.但很多人选择Python来写爬虫,为什么呢?因为Python确实很适合做爬虫,丰富的第三方库十分强大,简单几行代码便可实 ...
- python 爬虫哪个好_Python爬虫框架哪个最好用最简单
想使用python爬虫框架开发个爬虫,但目前了解有限,希望大家帮忙推荐几个,谢谢啦~ 另外,大家平常工作中都使用python干些什么事情呢?网站开发?爬虫?还是运维? scrapy 爬虫框架.纯pyt ...
最新文章
- 服务器和操作系统怎么看,服务器和操作系统怎么看
- ASP.NET Web API路由规则(二)
- python字符串三种常用的方法或函数_python中字符串常用的函数
- keil优化等级设置
- 研讨会 | 知识图谱引领认知智能+
- matlab虚拟现实仿真
- java json 去除空_详解Java去除json数据中的null空值问题
- Spike Timing–Dependent Plasticity: A Hebbian Learning Rule ///STDP时空依赖可塑性
- 多线程_C# 多线程技术
- Java实现飞机大战
- PaddleOCR 识别器数据增强
- 止增笑耳的星际迷航前传
- 0201电脑桌的制作过程(使用3DsMAX2016)
- 从五个方面入手保障应用安全
- LocalDate 获取英文月份
- java几个注解的作用及比较(@RestController、@Controller、@ResponseBody、@RequestBody等)
- Python学习笔记(六)Python基础_数据类型——字符串
- 基于正点原子探索者使用STM32CubeMX+FreeRTOS+LWIP
- 换晶振导致stm32串口数据飞码的解决办法
- 浅谈网页防篡改技术的前生今世
热门文章
- 郴州华硕服务器维修,如何编译padavan路由器rt-n56u华硕(即老毛子)固件
- excel透视表分组中展示为0的组
- Powershell 脚本创建 iso 映像文件
- 从一文不值到数字黄金 诞生于极客圈的比特币,究竟经历了什么?
- MySQL安装在其他盘(Windows平台-便捷版MySQL安装教程)
- 正则表达式-支付宝账号验证
- 磁盘分区魔法师Norton PartitionMagic(PQ8.0)使用图解和使用(搜藏)
- 实现员工考勤信息管理
- 陈志武《金融的逻辑2》笔记
- 全球顶尖AI科研团队!上海人工智能实验室2022届校招火热进行中!