08 2017 档案
摘要:前段时间不知道从哪里弄来的一份知乎数据,数据量不多,只有二十万的样子,今天就以这二十万数据来进行一次简单地数据可视化,主要的工具就是两个:pandas和matplotlib。 以下相关的代码和示例数据在文末有相应的下载链接,你可以下载数据自己尝试。 实际上,你也可以使用BI软件进行分析,速度和可视化
阅读全文
摘要:首先创建一组数据 非交叉选取 下面的这种方法只能单独的选取行或者列,即只能操作某一个轴的数据,不能实现交叉。 选取单独列 选取的数据我们用type来查看类型发现是Series 选取某指定的几列 值得注意的是,使用这种方法并不能实现对列的切片,比如df[['A':'C']] 选取某一行 使用这种方法,
阅读全文
摘要:算术运算 pandas进行算术运算时,可以直接使用加减乘除的符号进行运算,但是为了有更多的灵活性,pandas提供了相对应的方法进行算术运算。 add() 加 sub() 减 mul() 乘 div() 除 参数: fill_value pandas的算术运算只有参与运算的双方相对应的索引位置均存在
阅读全文
摘要:常用属性 dtype 返回Series的数据类型 dtypes 返回DataFrame每一列的数据类型 index 返回0轴索引,可以使用list()将其变为列表形式 columns 返回1轴索引,可以适应list将其变为列表类型 values 返回值,是一个array类型 shape 返回维度 T
阅读全文
摘要:创建对象 创建Series对象 Series可以通过列表,标量值,字典,ndarray,其他函数来创建 创建DataFrame对象 DataFrame可以通过二维的ndarray,列表,字典,Sries构成的字典创建 a = pd.DataFrame(np.arange(10).reshape(2,
阅读全文
摘要:csv类型读取 命令:pd.read_csv() 常用参数: path 文件路径,可以是网络数据 encoding 指定编码。 sep 指定行中各字段的分隔符,使用read_csv()时,默认就是逗号。 header 指定哪一行作为列索引,默认是0,即第一行。 当你指定None时,pandas会默认
阅读全文
摘要:```
# 使用matplotlib绘制散点图
import numpy as np
import matplotlib.pyplot as plt # 设置全局刻度标签大小
plt.rcParams['xtick.labelsize'] = 24 plt.rcParams['ytick.labelsize'] = 24
# 设置全局字体
plt.rcParams['font.sans-...
阅读全文
摘要:```
# 使用matplotlib绘制饼图
import numpy as np
import matplotlib.pyplot as plt # 设置全局字体
plt.rcParams['font.sans-serif'] = ['SimHei']
# 解决‘-’表现为方块的问题
plt.rcParams['axes.unicode_minus'] = False data = { ...
阅读全文
摘要:```
# 使用matplotlib绘制柱状图
import numpy as np
import matplotlib.pyplot as plt # 设置全局字体,以支持中文
plt.rcParams['font.sans-serif'] = ['SimHei']
# 解决‘-’表现为方块的问题
plt.rcParams['axes.unicode_minus'] = False data...
阅读全文
摘要:```
# 使用matplotlib绘制折线图
import matplotlib.pyplot as plt
import numpy as np # 在一个图形中创建两条线
fig = plt.figure(figsize=(10,6))
ax1 =fig.add_subplot(1,1,1) ax1.set_xlabel('number')
ax1.set_ylabel('rates'...
阅读全文
摘要:从小到大,一直很喜欢听周杰伦唱的歌,可是相信很多人和我一样,并不能完全听明白歌词究竟是什么,今天我们就来研究一下周董最喜欢在歌词中用的词,这一小节的构思是这样的,我们爬取周杰伦的歌词信息,并且将其进行分词,来看一下什么样的词出现的频率最高,我们将这一整个过程分为两部分,前一部分是抓取,后一部分是分析
阅读全文
摘要:今天的主要内容是爬取豆瓣电影短评,看一下网友是怎么评价最近的电影的,方便我们以后的分析,以以下三部电影:二十二,战狼,三生三世十里桃花为例。 由于豆瓣短评网页比较简单,且不存在动态加载的内容,我们下面就直接上代码。有一点需要注意的是,豆瓣短评的前几页不需要登录就可以看,但是后面的内容是是需要我们登录
阅读全文
摘要:在上一小节中,我们已经提取到了房源的具体信息,这一节中,我们主要是对提取到的数据进行后续的处理,以及进行相关的设置。 数据处理 我们这里以把数据存储到mongo数据库为例。 编写pipelines.py文件 非常简单的几步,就实现了将数据保存到mongo数据库中,所以说mongo数据库还是非常好用的
阅读全文
摘要:今天,我们就以 "链家网" 南京地区为例,来学习爬取链家网的成交房源数据。 这里推荐使用火狐浏览器,并且安装firebug和firepath两款插件,你会发现,这两款插件会给我们后续的数据提取带来很大的方便。 首先创建一个名称为lianjia的项目。 需求分析 爬取数据的第一步当然是确定我们的需求,
阅读全文
摘要:之前我们学习的内容都是抓取静态页面,每次请求,它的网页全部信息将会一次呈现出来。 但是,像比如一些购物网站,他们的商品信息都是js加载出来的,并且会有ajax异步加载。像这样的情况,直接使用scrapy的Request请求是拿不到我们想要的信息的,解决的方法就是使用scrapy splash。 sc
阅读全文
摘要:当我们需要大量的爬取网站信息时,除了切换User Agent之外,另外一个重要的方式就是设置IP代理,以防止我们的爬虫被拒绝,下面我们就来演示scrapy如何设置随机IPProxy。 设置随机IPProxy 同样的你想要设置IPProxy ,首先需要找到可用的IPProxy ,通常情况下,一些代理网
阅读全文
摘要:大多数情况下,网站都会根据我们的请求头信息来区分你是不是一个爬虫程序,如果一旦识别出这是一个爬虫程序,很容易就会拒绝我们的请求,因此我们需要给我们的爬虫手动添加请求头信息,来模拟浏览器的行为,但是当我们需要大量的爬取某一个网站的时候,一直使用同一个User Agent显然也是不够的,因此,我们本节的
阅读全文
摘要:下载器中间件是介于Scrapy的request/response处理的钩子框架,是用于全局修改Scrapy request和response的一个轻量、底层的系统。 激活Downloader Middleware 要激活下载器中间件组件,将其加入到 DOWNLOADER_MIDDLEWARES 设置
阅读全文
摘要:Media Pipeline Scrapy为下载item中包含的文件(比如在爬取到产品时,同时也想保存对应的图片)提供了一个可重用的 item pipelines . 这些pipeline有些共同的方法和结构(称之为media pipeline)。我们可以使用FilesPipeline和Images
阅读全文
摘要:Scrapy设定(settings)提供了定制Scrapy组件的方法。你可以控制包括核心(core),插件(extension),pipeline及spider组件。设定为代码提供了提取以key value映射的配置值的的全局命名空间(namespace)。 Scrapy内置设置 下面给出scrap
阅读全文
摘要:在之前的 "Scrapy学习篇(四)之数据的存储" 的章节中,我们其实已经使用了Item Pipeline,那一章节主要的目的是形成一个笼统的认识,知道scrapy能干些什么,但是,为了形成一个更加全面的体系,我们在这一章节中,将会单独介绍Item Pipeline,方便以后你自定义你的item p
阅读全文
摘要:当我们取得了网页的response之后,最关键的就是如何从繁杂的网页中把我们需要的数据提取出来,python从网页中提取数据的包很多,常用的有下面的几个: BeautifulSoup 它基于HTML代码的结构来构造一个Python对象, 对不良标记的处理也非常合理,但是速度上有所欠缺。 lxml 是
阅读全文
摘要:Spiders Spider类定义了如何爬取某个网站。包括了爬取的动作(例如:是否跟进链接)以及如何从网页的内容中提取结构化数据(爬取item)。简而言之,Spider就是你定义爬取的动作及分析某个网页(或者是有些网页)的地方。 对spider来说,爬取的循环类似如下: 1. 以初始的URL初始化R
阅读全文
摘要:上一篇中,我们简单的实现了一个博客首页信息的爬取,并在控制台输出,但是,爬下来的信息自然是需要保存下来的。这一篇主要是实现信息的存储,我们以将信息保存到文件和mongo数据库为例,学习数据的存储,依然是以博客首页信息为例。 编写爬虫 修改items.py文件来定义我们的item Item 是保存爬取
阅读全文
摘要:创建项目 创建项目是爬取内容的第一步,之前已经讲过,Scrapy通过 命令来在当前目录下创建一个新的项目。 下面我们创建一个爬取博客园('https://www.cnblogs.com/')文章信息的项目 其中 是你的项目的名字,可以自己定义。 其目录结构如下 cnblog/ scrapy.cfg
阅读全文
摘要:简介 Scrapy是通过Scrapy命令行工具进行控制的,包括创建新的项目,爬虫的启动,相关的设置,Scrapy提供了两种内置的命令,分别是全局命令和项目命令,顾名思义,全局命令就是在任意位置都可以执行的命令,而项目命令只有在你新创建了项目之后,在项目目录中才可以执行的命令。在这里,简单的介绍一些常
阅读全文
摘要:概览 在具体的学习scrapy之前,我们先对scrapy的架构做一个简单的了解,之后所有的内容都是基于此架构实现的,在初学阶段只需要简单的了解即可,之后的学习中,你会对此架构有更深的理解。 下面是scrapy官网给出的最新的架构图示。 基本组件 引擎(Engine) 引擎负责控制数据流在系统中所有组
阅读全文
摘要:配置git 安装git以后,打开git bash,首先要对git进行配置,输入 git config global username "你的名字" git config global user.email "你的邮箱" 此处并不需要输入密码,只是相当提供你的身份标识, 是全局配置,以后你的计算机上的
阅读全文

浙公网安备 33010602011771号