课程概述
博客地址
随笔有分类:
- 爬虫
- 数据分析+金融策略
- 数据结构+算法
爬虫对应都有章节
爬虫的学习内容
- requests模块
- 数据解析
- 动态加载数据的爬取
- selenium
- 移动端数据的爬取
- 异步的爬虫
- 10中反爬机制
- scrapy框架
- 异步的爬虫框架
爬虫岗位:爬虫+数据分析
数据分析岗位:数据分析+相关机器学习技术
学习方法
- 做自己的笔记
- 自己能理解,教自己一遍
开发环境搭建介绍
-
Anaconda
是一个基于数据分析和机器学习的集成环境(关于数据分析和机器学习对应的各种环境和模块)
-
jupyter
Anaconda这个集成环境提供的一个基于浏览器可视化的编码工具
jupyter
启动jupyter
-
在终端中录入jupyter notebook
-
打开navigator,选择Home,点击jupyter notebook图标下的launch
jupyter基本使用
jupyter源文件
- 由cell组成:cell就是一行可编辑框
- code模式的cell可以写一行或者多行代码
- 特性:编写代码的顺序是无所谓的,但是执行代码顺序一定是自上而下的
- 只要在一个cell定义好了相关的变量或函数或者类(相关的定义),当该cell执行后,则定义的内容就会被加载到当前源文件的缓存中,那么表示在其他任意的cell中都可以直接使用之前定义好的加载到缓存中的定义。
- cell的作用
- 用来根据不同的模式进行代码和笔记的编写。编写好的代码和笔记可以直接在当前文件中运行,查看到运行结果。
- cell的模式:
- code:可以编写python代码
- markdown:编写笔记(兼容HTML)
快捷键的使用
-
插入cell
a向上插,b向下插
-
删除cell
x
-
执行cell
shift+enter
-
切换cell的模式
m(到markdown),y(到code)
-
cell执行后,在cell的左侧双击就可以回到cell的编辑模式
-
执行结果的收回(缩放)
在执行结果左侧双击即可
-
打开帮助文档(函数参数、返回值介绍)
shift+tab
-
自动补全
tab
-
jupyter的源文件写完后可以导出:
File->Download as->(通常html,但图片会缺失)
爬虫概述
什么是爬虫?
- 就是通过编写程序,让其模拟浏览器上网,然后在互联网中抓取数据的过程。
- 模拟:浏览器就是一个纯天然最原始的一个爬虫工具。
- 抓取:
- 抓取一整张的页面源码数据
- 抓取一整张页面中的局部数据
爬虫的分类
-
通用爬虫
- 要求我们爬取一整张页面源码数据
-
聚焦爬虫
- 要求爬取一张页面页面中的局部的数据
- 聚焦爬虫一定是建立在通用爬虫基础之上
- 要求爬取一张页面页面中的局部的数据
-
增量式爬虫
- 用来监测网站数据更新的情况,以便爬取到网站最新更新出来的数据
-
分布式爬虫
- 提高爬取效率的终极武器
-
⭐️反爬机制(10种)
- 是作用到门户网站中。如果网站中不想让爬虫轻易爬取到数据,它可以制定相关的机制或者措施阻止爬虫程序爬取其数据
-
⭐️反反爬策略(10种)
- 是作用在爬虫程序中。我们爬虫可以制定相关的策略破解反爬机制从而爬取到相关的数据
-
课程第一个反爬机制:
- robots协议(防君子不防小人)
- 是一个纯文本的协议,协议中规定了该网站中哪些数据可以被哪些爬虫爬取,哪些不可以被爬取
- https://www.jd.com/robots.txt
- 破解
- 你自己主观性的不遵从协议即可
- robots协议(防君子不防小人)