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

简介: Python爬虫.jpgWHAT数据挖掘是一门综合的技术,随着Ai的兴起,在国内的需求日渐增大。数据挖掘的职业方向通常有三个,顺便概要地提一下所需的技能(不仅于此)数据分析方向:需要数理知识支撑,比如概率论,统计学等数据挖掘方向:需要懂得主流算法的原理及应用,数据库的原理和操作科学研究方向:通常是科学家们在深入研究数据挖掘的相关基础理论和算法但是看完简介,好像和爬虫没什么关系?接着往下看。
Python爬虫.jpg

WHAT

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

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

  • 数据分析方向:需要数理知识支撑,比如概率论,统计学等
  • 数据挖掘方向:需要懂得主流算法的原理及应用,数据库的原理和操作
  • 科学研究方向:通常是科学家们在深入研究数据挖掘的相关基础理论和算法

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

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

  1. 数据准备
  2. 数据观察(找规律)
  3. 数据建模
  4. 数据挖掘(将得到的模型选择合适的算法应用到数据上,验证并得出结论)

WHY

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

  1. 数据获取: 数据爬虫, 数据仓库
  2. 数据清洗: 去掉无用的数据
  3. 数据整理: 将数据规格化
  4. 数据存储: 先存储为CSV等文件, 最后再将数据进行整理和归档
注释: CSV, 全称Comma-Separated Values,即逗号分割值. 
     是将数据以逗号分隔开的一种纯文本文件, 实际上逗号可以是用其他符号代替.

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

HOW

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

  • Python入门

搜索结果

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

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

  • list,dict(列表, 字典):用来序列化你爬的东西
  • 切片:用来对爬取的内容进行分割,生成
  • 条件判断(if等):用来解决爬虫过程中哪些要哪些不要的问题
  • 循环和迭代(for while ):用来循环,重复爬虫动作
  • 文件读写操作:用来读取参数、保存爬下来的内容等
  • 了解爬虫

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

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

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

在这里, 你可以学习Python的一个基础库
Request http://docs.python-requests.org/zh_CN/latest/user/quickstart.html
通过它来模拟发出POST和GET请求

相关知识连接:
HTML: 
http://www.w3school.com.cn/h.asp

JSON: 
http://www.runoob.com/json/json-intro.html

GET与POST: 
http://www.cnblogs.com/hyddd/archive/2009/03/31/1426026.html
  1. 解析页面
    解析页面有两把利器: 一个是正则表达式, 另一个是选择一些库来帮助我们解析,比如Beautiful Soup
相关知识连接:
Beautiful Soup: 
https://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html

正则表达式:
http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html
  1. 存储内容
    最后我们通过文件的读写把爬取的内容存储到CSV等文件,或者数据库中. 在一开始, 你也可以选择直接打印到屏幕上,
  • 实践项目

爬取豆瓣电影Top250
https://zhuanlan.zhihu.com/p/20423182

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

目录
相关文章
|
3天前
|
数据处理 Python
如何使用Python的Pandas库进行数据排序和排名
【4月更文挑战第22天】Pandas Python库提供数据排序和排名功能。使用`sort_values()`按列进行升序或降序排序,如`df.sort_values(by='A', ascending=False)`。`rank()`函数用于计算排名,如`df['A'].rank(ascending=False)`。多列操作可传入列名列表,如`df.sort_values(by=['A', 'B'], ascending=[True, False])`和分别对'A'、'B'列排名。
13 2
|
2天前
|
机器学习/深度学习 算法 数据挖掘
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享-2
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享
24 1
|
1天前
|
开发框架 前端开发 数据库
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
|
1天前
|
数据采集 数据可视化 数据处理
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
|
1天前
|
Java 数据库连接 数据处理
Python从入门到精通:3.1.2多线程与多进程编程
Python从入门到精通:3.1.2多线程与多进程编程
|
1天前
|
机器学习/深度学习 算法 Python
数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
18 4
|
1天前
|
机器学习/深度学习 算法 算法框架/工具
数据分享|PYTHON用KERAS的LSTM神经网络进行时间序列预测天然气价格例子
数据分享|PYTHON用KERAS的LSTM神经网络进行时间序列预测天然气价格例子
19 0
|
1天前
|
机器学习/深度学习 数据挖掘 网络架构
Python对商店数据进行lstm和xgboost销售量时间序列建模预测分析
Python对商店数据进行lstm和xgboost销售量时间序列建模预测分析
12 0
|
2天前
|
数据挖掘 数据处理 索引
如何使用Python的Pandas库进行数据筛选和过滤?
Pandas是Python数据分析的核心库,提供DataFrame数据结构。基本步骤包括导入库、创建DataFrame及进行数据筛选。示例代码展示了如何通过布尔索引、`query()`和`loc[]`方法筛选`Age`大于19的记录。
10 0
|
2天前
|
数据采集 存储 JSON
Python爬虫面试:requests、BeautifulSoup与Scrapy详解
【4月更文挑战第19天】本文聚焦于Python爬虫面试中的核心库——requests、BeautifulSoup和Scrapy。讲解了它们的常见问题、易错点及应对策略。对于requests,强调了异常处理、代理设置和请求重试;BeautifulSoup部分提到选择器使用、动态内容处理和解析效率优化;而Scrapy则关注项目架构、数据存储和分布式爬虫。通过实例代码,帮助读者深化理解并提升面试表现。
12 0