摘要: scrapy框架 简介:所谓的框架就是集合一个很多功能且具有很强的通用性的一个项目模板 scrapy:是一个专门用于异步爬虫的框架 高性能的数据解析。请求发送。持久化存储,全站数据爬取,中间件,分布式。。。 环境安装: mac,linux:pip install scrapy windows: 首先 阅读全文
posted @ 2020-04-12 22:26 zz洲神在此 阅读(159) 评论(0) 推荐(0) 编辑
摘要: JS解密+混淆破解 爬取的网站:https://www.aqistudy.cn/html/city_detail.html 更清晰的查看博客:博客地址:https://www.cnblogs.com/bobo zhang/p/11243138.html 分析: 1.修改查询条件(城市的名称+时间范围 阅读全文
posted @ 2020-04-12 22:04 zz洲神在此 阅读(10667) 评论(1) 推荐(1) 编辑
摘要: 基于selenium实现自动化爬取数据 如果想具体查看selenium自动化模块的更多功能请看我的博客测试分类中有介绍 selenium 概念:基于浏览器自动化的模块 自动化:可以通过代码指定一系列的行为动作,然后将其作用到浏览器中。 pip install selenium selenium和爬虫 阅读全文
posted @ 2020-04-12 21:55 zz洲神在此 阅读(1396) 评论(0) 推荐(0) 编辑
摘要: 线程池实现爬取数据 协程基础 概念部分 代码部分 多任务操作 多任务的异步爬虫 阅读全文
posted @ 2020-04-12 21:42 zz洲神在此 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 爬取梨视频中的短视频数据 以上获取梨视频发现他是动态加载的video中src的url地址。所以我们无法可见即可得。 经过抓包工具中发的get请求中response选项卡中发现srcUrl中有这个src属性。并且里面得网址就是需要的视频数据网址。所以找到那块标签获取text文本内容,通过正则筛选出来u 阅读全文
posted @ 2020-04-12 21:13 zz洲神在此 阅读(2885) 评论(0) 推荐(0) 编辑
摘要: 反扒机制:代理操作 代理操作: 在爬虫中,所谓的代理指的是什么? 就是代理服务器 代理服务器的作用: 就是用来转发请求和响应的 在爬虫中为什么需要使用代理服务器: 如果我们的爬虫对服务器短时间内发出高频请求。那么服务器检测到这样一个异常请求,就会将该请求的对应设备IP禁掉,这样就无法给服务器发请求获 阅读全文
posted @ 2020-04-12 21:08 zz洲神在此 阅读(572) 评论(0) 推荐(0) 编辑
摘要: 反扒机制:图片的懒加载 站长素材高清图片下载 反扒机制:图片懒加载,广泛应用于一些图片网站中 只有当图片真正显示在浏览器可视化范围内才会将img标签的伪属性变成真正的属性,如果是requests发请求,requests请求是没有可视化范围的,因此我们一定要解析的是img伪属性的属性值(图片地址,例如 阅读全文
posted @ 2020-04-12 20:59 zz洲神在此 阅读(675) 评论(0) 推荐(0) 编辑
摘要: 数据解析 正则 bs4 xpath(常用) 如何爬取图片数据? 方式1:基于requests 方式2:基于urllib urllib模块作用和requests模块一样,都是基于网络请求的模块。 当requests问世后就迅速的替代了urllib模块 重点: 上述两种爬取图片操作不同之处在于使用url 阅读全文
posted @ 2020-04-12 20:54 zz洲神在此 阅读(465) 评论(0) 推荐(0) 编辑
摘要: 动态加载的数据 例子1:爬取豆瓣电影中的电影详情数据 url:https://movie.douban.com/ 1.什么是动态加载的数据: 我们通过requests模块进行数据爬取无法每次都是可见即可得,有些数据是通过非浏览器地址栏中得url请求到的地址。而是其他请求请求到的数据,那么这些通过其他 阅读全文
posted @ 2020-04-12 19:56 zz洲神在此 阅读(966) 评论(0) 推荐(0) 编辑
摘要: requests模块 爬虫中一个基于网络请求的模块 pip install requests 作用:模拟浏览器发起请求 编码流程: 1 . 指定url 2 . 发起请求 3 . 获取响应数据(爬取到的页面源码数据) 4 . 进行持久化存储 简单例子: 实现一个简易网页采集器 基于搜狗针对指定不同的关 阅读全文
posted @ 2020-04-12 19:53 zz洲神在此 阅读(355) 评论(0) 推荐(0) 编辑
摘要: Anacanda开发环境 Anaconda是基于数据分析和机器学习的集成环境给我们集成好了数据分析和机器学习对应的各种环境和模块)。 jupyter:是Anaconda集成环境提供的基于浏览器可视化的编码工具 注意事项 在环境搭建的时候只需要安装Anaconda即可,安装路径必须是纯英文的,且不可以 阅读全文
posted @ 2020-04-12 19:42 zz洲神在此 阅读(772) 评论(0) 推荐(0) 编辑
摘要: 快速排序 快速排序 将列表中第一个元素设定为基准数字,赋值给mid变量,然后将整个列表中比基准小的数值放在基准的左侧,比基准大的数字放到基准的右侧,然后将基准数字左右两侧的序列在根据此方法进行排放。 定义两个指针,low指向最左侧,high指向最右侧 然后对最右侧指针进行向左移动,移动规则是:如果指 阅读全文
posted @ 2020-04-12 19:39 zz洲神在此 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 希尔排序 关键变量:增量gap gap:初始值为len(alist) // 2 1.表示分组的组数 2. 每一组数据之间的间隔 插入排序就是增量为1的希尔排序 阅读全文
posted @ 2020-04-12 19:33 zz洲神在此 阅读(66) 评论(0) 推荐(0) 编辑
摘要: 插入排序 插入排序 思路: 需要将原始序列分成两部分:有序部分,无序部分 将无序部分中的元素逐一插入到有序部分中 注意:初始情况下,有序部分为乱序序列的第一个元素,无序部分为乱序序列的n 1个元素 乱序序列:[3,8,5,7,6] [3,,,,8,5,7,6]: 3就是初始的有序部分,8,5,7,6 阅读全文
posted @ 2020-04-12 19:31 zz洲神在此 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 选择排序 def pao1(alist): x = 1 while x alist[i+1]: 如果前面的元素大于后面的元素,交换两个元素的位置 alist[i],alist[i+1] = alist[i+1],alist[i]` 选择排序是遍历整个列表,设置一个index索引为0,每次用该列表的索 阅读全文
posted @ 2020-04-12 13:19 zz洲神在此 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序 通过对列表中的元素进行两两比较,数值大的交换位置,知道最后一个,依次比较,得出有序序列。 冒泡思路 发现上述代码已经可以将序列中的最大值放置到合适的位置,然后我们就可以将上述操作继续作用到n 1个元素对应的新序列,则就可以将n 1个元素对应的最大值放置到了n 1个元素的最后位置。 结论:发 阅读全文
posted @ 2020-04-12 13:18 zz洲神在此 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 递归 假设你在祖母的阁楼中发现一个上锁的神秘手提箱。 祖母告诉你,钥匙可能在下面这个盒子中。 这个盒子里有盒子,而盒子里的盒子又有盒子。钥匙就在某个盒子中。 为找到钥匙,你将使用什么算法?先想想这个问题,再接着往下看。 第一种方法使用的是while循环:只要 盒子堆不空,就从中取一个盒子,并在其中仔 阅读全文
posted @ 2020-04-12 13:12 zz洲神在此 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 二分查找 二分查找只可以作用在有序序列中。 循环low版 递归版 阅读全文
posted @ 2020-04-12 12:56 zz洲神在此 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 二叉树 根节点:树中上部的节点 左叶子节点 右叶子节点 子树 完整的子树 一个根节点,左右叶子节点组成 不完整的子树 根节点,左叶子节点 根节点,右叶子节点 根节点 特点:每一个节点都可以作为某一颗子树的根节点 构造二叉树 想法:创建列表,每次循环判断节点的left和right,如果不为空将该节点放 阅读全文
posted @ 2020-04-12 12:53 zz洲神在此 阅读(129) 评论(0) 推荐(0) 编辑