数据挖掘敲门砖-Python爬虫入门

WHAT

数据挖掘是一门综合的技术,随着Ai的兴起,在国内的需求日渐增大。

数据挖掘的职业方向通常有三个,顺便概要地提一下所需的技能(不仅于此)

数据分析方向:需要数理知识支撑,比如概率论,统计学等

数据挖掘方向:需要懂得主流算法的原理及应用,数据库的原理和操作

科学研究方向:通常是科学家们在深入研究数据挖掘的相关基础理论和算法

但是看完简介,好像和爬虫没什么关系?接着往下看。

要开始数据挖掘之路,可以先从培养数据分析能力开始。数据分析的常见步骤是:

数据准备

数据观察(找规律)

数据建模

数据挖掘(将得到的模型选择合适的算法应用到数据上,验证并得出结论)

WHY

据统计,数据准备占整个数据分析70%的时间.我们把数据准备的步骤进行细分:

数据获取: 数据爬虫, 数据仓库

数据清洗: 去掉无用的数据

数据整理: 将数据规格化

数据存储: 先存储为CSV等文件, 最后再将数据进行整理和归档

数据仓库通常是企业级的应用, 对于我们这种初学者获取的难度较高. 而数据爬虫的门槛就很低了, 甚至对于没接触过编程的其他专业的朋友也没有很高的门槛, 这得益于一门语法简单的语言-----Python的流行.

这就是为什么把Python爬虫称作敲门砖的原因啦

HOW

现在我们的目标变成两个, 先会Python, 再会用Python爬虫

Python入门

选择一个合适的教程可以让你少走一些弯路, 在Google上搜索Python教程, 可以收到42万条结果, 排名靠前的菜鸟教程,廖雪峰的Python教程, 以及简明Python教程, 都是适合入门的免费教程

感觉没时间先完全系统地学习? 可以先把下面这些Python知识先掌握, 以后再把其他补上!

list,dict(列表, 字典):用来序列化你爬的东西

切片:用来对爬取的内容进行分割,生成

条件判断(if等):用来解决爬虫过程中哪些要哪些不要的问题

循环和迭代(for while ):用来循环,重复爬虫动作

文件读写操作:用来读取参数、保存爬下来的内容等

了解爬虫

发送请求——获得页面——解析页面——下载内容——储存内容, 这是通常爬虫的五步走.再简化一下步骤, 就是分析目标, 解析页面, 存储内容

分析目标

我们要分析的目标----网页, 它里面的信息只有两种呈现方式:

HTML

JSON

这些信息是我们先向服务器发送请求, 随后服务器返回信息给我们. 有点像我们平时在餐馆吃饭, 你既要POST跟服务器'点菜', 也要GET等服务器'上菜'

解析页面

解析页面有两把利器: 一个是正则表达式, 另一个是选择一些库来帮助我们解析,比如Beautiful Soup

存储内容最后我们通过文件的读写把爬取的内容存储到CSV等文件,或者数据库中. 在一开始, 你也可以选择直接打印到屏幕上,

实践项目

把项目完成之后, 相信你会对爬虫有更好的理解.

今日作者: 光光同学_

不爱看电影的摄影师不是好的程序员

本文来自企鹅号 - Benny的学习日记媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏阮一峰的网络日志

USENET简介

普通的互联网用户,可能对USENET知之甚少,或者根本就没有听说过它。但是,这是一种很重要的网络应用,里面有一些真正有趣的东西。 我在网上没有找到比较通俗易懂的...

2839
来自专栏Python爬虫与算法进阶

爬虫学到什么程度可以去找工作

随便看看知乎上的教程就可以入门了,就Python而言,会requests当然是不够的,还需要了解scrapy和pyspider这两个框架,scrapy_redi...

1241
来自专栏沈唁志

详解Linux运维工程师必备技能

2752

无服务器体系结构简介

无服务器架构和函数即服务(FaaS)是当下云计算领域的大热门。除了微软和亚马逊以外,还有很多厂商提供FaaS。本文对无服务器体系结构进行了简短的介绍,并试图解释...

2259
来自专栏帘卷西风的专栏

开源CEGUI编辑器之一(MFC重写的LayoutEditor)

转载请注明出处:帘卷西风的专栏(http://blog.csdn.net/ljxfblog)

1352
来自专栏Crossin的编程教室

我们一直谈论“写代码”,但你会“读代码”吗?

编程,又被称作“写代码”。这个说法有可能会带来一点点误解,让人觉得如何“写”是学习编程要解决的主要问题。但事实并非如此。尽管最终代码要在键盘上敲出来,但这个过程...

1062
来自专栏前端大白专栏

关于react-native的各种报错的最终解决方案

2459
来自专栏小鄧子的技术博客专栏

Easy Clean architecture on Android

在我这几年的学习和成长中,深刻的意识到搭建一个Android应用架构是件非常痛苦的事,它不仅要满足不断增长的业务需求,还要保证架构自身的整洁,这让事情变得非常具...

883
来自专栏CSDN技术头条

大规模数据集成: Linked Data

在本系列的前两篇文章(“ 使用 RDF 创建数据网络 ” 和 “ 使用 SPARQL 查询 RDF 数据 ”)中,您了解了资源描述框架和 SPARQL 协议和 ...

2258
来自专栏IMWeb前端团队

如果被耗时任务拖累,可能是姿势不对

如果被耗时任务拖累,可能是姿势不对 在业务中,有时候需要处理一些相对耗时的事情,而且还有一些其他的逻辑还可能会依赖这个耗时任务。诚然,太久的耗时会对用户体验不好...

21910

扫码关注云+社区

领取腾讯云代金券