自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 【Airflow】构建爬虫任务系统

爬虫脚本太多了需要进行管理一下,领导决定使用airflow我了解了一下这个平台是用来做任务调度。是一个ETL工具ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程这里是一个github的地址这里是官方文档这里是我学习的视频资料博主的视频有一些老了,不过也是可以学习的。先看一下成果吧这里是首页记录了,我得dags任务dags就相当于我得一个爬虫任务,我们进入这个dag里面,可以看到有4个小任务(task)和一task执行的状态,还有一些基本信息。

2023-10-24 17:54:45 1236 3

原创 【接口流程分析】唯品会WEB端

1.先获取全类别接口2.通过类别接口可以得到,分类的详细categoryId3.通过详细categoryId进行请求 getProductIdsListRank 来获取对应类别的productId4.通过productIds获取对应产品的详细信息。唯品会,整体不复杂感觉没有难解决的难点,就是流程稍微长了一点,一步跟着一步。进行代码实现后展示成果。这里拿了10页连衣裙的数据,没任何问题,注意不要频繁访问他人网站。

2023-07-17 17:37:21 397

原创 【加速乐】CNVD漏洞信息平台

将请求二中cookie拿到,可以直接用,接下来就是用python实现这个流程。此处可以顺利拿到结果,证明整个流程已经通了。这个cnvd站点 包含 sha1, sha256,md5,这三种加密流程基本一样所以项目中有3个js文件。cnvd此网站,正常用户都需要如果点快了,会对其进行限流以及封ip行为,不要对网站进行攻击以及高并发爬取。

2023-07-14 18:47:44 968 2

原创 将DES解密用Python实现

注意: CryptoJS.enc.Utf8.parse(“11”);如果不满8字节 DES.new(new_key, mode) 会报出异常,踩了很大的坑。key = key.ljust(8, b"\x00") 使用空字节补全。将此段代码用python实现。

2023-07-03 16:43:18 457

原创 Python实现RSA(jsencrypt)加密的两种方式

注: 原创作者 https://zhuanlan.zhihu.com/p/158083974加了一点自己使用时候的小坑,目的是方便以后自己回溯查看。

2022-12-20 11:10:55 3317 1

原创 python爬虫实战【某汽车网站信息爬取】

写一个某汽车网站的爬虫,将车辆价格,车辆名称,车辆配置,不同型号,还有车友评论以及车友成交价格,最后保存json文件,更直接更直观。所以我们只要先去搜索拿到车id,再去请求车辆详情接口和车友评论接口就ok了,思路很清晰了。然后点进去看详情,打开开发者工具检查xhr交互,看一下有没有我们需要的ajax请求,这个懂车帝非常友好,没有什么反爬机制,正常访问就可以,我没有做频率测试也没有必要,我们先清空所有请求,点击口碑可以看到这个接口里面有我们想要的数据,在我们搜索车辆名称时,所加载的主页面里有,........

2022-07-19 17:22:16 6243 17

原创 CSS反爬系列一(某知名租房平台)

这样看来我们到问题要就解决了一大半了,接下来就是图片识别问题,我们怎么知道这个图片就是对应是什么呢,这就用到了ocr图像识别,还是推荐识别库,ddddocr。然后先看一下这些信息在什么地方,是通过xhr交互ajax发送,还是在页面源代码里,或者在其他地方呢?在浏览租房网站时候,凭借本能反应,打开了开发者工具,对页面元素进行检查看看能不能顺利采集。这里的价格通过背景图片,再用css定位这样我们就拿不到了,那该怎么解决呢?将图片下载下来用,第三方库识别可以看到完全正确,这种清晰数字的还是很好识别的。...

2022-07-18 14:07:20 332

原创 深度学习训练滑动验证码(Yolov5)

注:本文只用于学习,如有问题请联系作者。对于现在网络的大多数滑动验证码如果想用一个通用的方法还是需要用深度学习,用图像处理的方式对于单一类型还是比较好用的,多类型还是难以适用的。例如如下多种类型:这里展示了5种类型不同的滑块,我们要做的就是准确的找到缺口的位置通过。我这里使用的yolov5YOLO 是“You only look once”的首字母缩写词,是一种将图像划分为网格系统的对象检测算法。网格中的每个单元都负责检测自身内部的对象。由于其速度和准确性,YOLO 是最著名的目标检测算法之一

2022-06-15 19:37:54 6115 37

原创 【selenium+chorme】基于python常用操作

selenium+chorme这个组合初始是用来做自动化测试的,但是因为可以渲染js也可以用来做爬虫,但是效率很低,有利有弊。直接pip install selenium安装后也可通过官网下载安装,下载地址:https://pypi.org/project/selenium/成功之后可看到版本下载chromedriver:http://chromedriver.storage.googleapis.com/index.html 或者 https://npm.taobao.org/mirrors/c

2022-06-09 10:46:25 320 2

原创 【小方法】curl直接在线转request请求代码

操作如下:这里选中python然后将需要模拟请求的curl直接复制即可。博客主页,直接复制curl复制好了粘贴到网址的输入框内。然后直接复制即可用,非常方便。

2022-06-08 10:12:35 4106

原创 python中的requests常用方法

下载图片下载成功结果:存在乱码修改方法:两种方法都可以实现百度翻译案例需要携带cookie,headers再加上post的请求参数结果有了带上cookie和session可以请求登录之后的页面等小技巧cookie对象转换结果:SSL证书验证HTTPS = HTTP + SSL 就是http加上证书验证类似网站设置请求超时设置请求时长为0.01肯定是不通的,即可看到报错这里看的在清楚一点...

2022-06-07 17:12:37 1445 2

原创 【小方法】Python生成Excel文件的三种方法

python生成excel在做爬虫的时候是一个非常,常见的需求,今天总结一下。用于生成比较老的excel文件,比如xls格式,最大行数限制为65536行结果:用于生成2010之后新的excel文件,比如xlsx格式大部分用于数据分析这里只是用to_excel方法ok到此结束,希望可以帮助到你,持续学习,持续分享!...

2022-06-06 20:06:34 10822 1

原创 mitmproxy系列抓包工具使用与实战

mitmproxy的安装下载:方式一最简单的方法是用pip install mitmproxy安装,安装的时候需要注意版本的问题。方式二https://www.mitmproxy.org/ 官网下载点击即可这里只说windows的因为我学习这个工具也是在windows上来使用的,如果安装Linux或者Mac版本再自行查询安装完毕后:进入安装环境下输入 mitmdump --version出现如下结果代表安装成功,mitmdump启动抓包:输入mitmdump启动可以看到这里mi

2022-05-31 20:59:48 3631

原创 【小方法】python列表套字典去重、列表套列表去重

问题场景:今天我在爬虫汇总数据的时候,采用的数据结构为列表套字典如下:这里有一个列表里面有三个元素类型都是字典,可以看到索引为0和2的元素key和value完全相同。这是我想去掉其中一个就是一个简单的字典去重方法,列表去重很简单,直接采用set转为集合方法在转回list类型,我尝试了一下,我天真的以为此时的数据结构也可以这样操作。错误提示说 不可哈希类型。可哈希:int \ float \ str \ tuple不可哈希: list \ set \ dict列表嵌套字典去重:data_l

2022-05-27 18:19:51 4485 4

原创 【小方法】python爬取base64网络图片

问题场景:这种图片地址类型,如果用request直接去请求是得不到二进制数据的。这种需求还是比较常见的,我每次都是去百度,在csdn中去找,这次记录下来,以后也方便自己。代码解析:import base64import redef analysis_base64(src): result = re.search("data:image/(?P<ext>.*?);base64,(?P<data>.*)", src, re.DOTALL) if resul

2022-05-27 16:41:55 3021

原创 【小方法】python图片拼接(PIL模块)

使用场景:今天超级🦅识别验证码遇到一个问题,着张图片是由两张图片组成的,但是超级🦅识别点选验证码,只能传入一张图片,于是需要将两张图片进行一个拼接。当然截图也是可以的,但是截图没有原图准确。于是今天我就开始了,疯狂百度,有很多种方法都可以实现,比如numpy数组拼接,用cv2拼接,还有使用PIL库,个人觉得使用PIL库的方法最合适了。代码解析:def image_Splicing(img_1, img_2, flag='y'): img1 = Image.open(img_1)

2022-05-26 19:39:29 11142 4

原创 【深度学习】四位定长图形验证码识别(基于pytorch)

Hello验证码在我们网络中已经无处不在了,再爬虫中遇到也非常头疼,大部分都采用第三方平台如"超级鹰",进行识别,有没有什么方法可以不调第三方API呢。当然有那就是深度学习,本文介绍一下从数据集采集,标注,构建网络,训练模型,测试结果,完整体系。找几张生活常见的验证码如登陆场景在登陆模块最常见的就是这种四位数字+英文验证码接下来实现完整方案。数据采集深度学习的第一步就是采集数据,一个好的数据集就成功了一半了。数据采集也就是爬虫部分,大部分python学者因该都不陌生。代码如下:header

2022-05-10 10:30:18 4563 13

原创 Opencv边缘检测破解滑动验证码基于python(透明通道)

2022-04-21 20:50:11 4486 1

原创 Opencv模板匹配破解滑动验证码基于python

如果你直接使用模板匹配效果并不理想的话,可以试试这种方法,我们现将图片进行自适应阈值处理,这样的则可以增强轮廓边缘的信息,让效果更加显著,在使用边缘检测保留更多信息,由于缺口位置是半透明阴影状态,模板图片和缺口位置存在相同信息,则可以大大提高匹配准确率。展示图片两张图片一张是滑块背景图另一张是 模板也就是小的拼图思路分析导入图片import cv2img_rgb = cv2.imread(img_path)template = cv2.imread(tm_path)自适应阈值将导入

2022-03-27 19:41:44 5708 7

原创 Redis持久化存储(详细)

来自知乎:https://zhuanlan.zhihu.com/p/77646963分享学习Redis 的数据全部在内存里,如果突然宕机,数据就会全部丢失,因此必须有一种机制来保证 Redis 的数据不会因为故障而丢失,这种机制就是 Redis 的持久化机制。Redis 的持久化机制有两种,第一种是RDB快照,第二种是 AOF 日志。快照是一次全量备份,AOF 日志是连续的增量备份。快照是内存数据的二进制序列化形式,在存储上非常紧凑,而 AOF 日志记录的是内存数据修改的指令记录文本。1、RDB快照

2022-02-06 11:31:56 1881

原创 Elasticsearch搜索引擎存储(基本使用)

1.Elasticsearch相关概念Elasticsearch中有几个基本概念,如节点、索引、文档等,下面分别说明一下。理解这些概念对熟悉Elasticsearch有帮助节点和集群Elasticsearch本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器均可以运行多个Elasticsearch实例。单个Elasticsearch实例称为一个节点(Node),一组节点构成一个集群(Cluster)。索引索引就是index,Elasticsearch会索引所有字段,经过处理后写

2022-02-02 13:32:15 2505

原创 parsel的使用(保姆级别)

如果将xpath和css穿插起来,那是不是可以更灵活呢?这里我们介绍另一个解析库叫做parsel。1.介绍parsel这个库可以解析HTML和XML,并支持使用Xpath和CSS选择器对内容进行提取和修改,同时还融合了正则表达式的提取功能。parsel灵活且强大,同时也是python最流行的爬虫框架Scrapy的底层支持安装pip3 install parsel2.初始化html = '''<div> <ul> <li class="

2022-01-31 10:13:50 17473 13

原创 PyQuery详细教学(保姆级别)

注:来源于崔庆才<<python3爬虫实战开发2>>本人学习并分享,略有补充。1.准备工作如果你对Web编程有所了解,如果你比较喜欢CSS选择器,如果你对jquery有所了解,那么这里有一个更适合你的解析库pyquerypip3 install pyquery2.初始化在用pyquery库解析HTML文本的时候,需要先将其初始化为一个PyQuery对象。初始化有很多种方法,比如直接传入字符串,传入url、文件名称,等等。字符串初始化这种方式很多方式直接把HTML的

2022-01-30 20:26:34 5339

原创 Xpath的使用(详细教学)

1.Xpath的概览 XPath的选择功能十分强大,他提供了非常简洁明了的路径选择表达式。另外,它还提供了100多个内建函数, 用于字符串,数值,时间的匹配以及节点,序列的处理。几乎所有我们想要定位的节点。都可以用XPath选择。2.XPath常用规则表达式描述nodename选取此节点的所有子节点/从当前节点选取直接子节点//从当前节点选取子孙节点.选取当前节点. .选取当前节点的父节点@选取属性这里列出了XPath的一个常用匹

2022-01-29 12:16:53 18814 6

原创 Docker常用命令

Docker常用命令帮助命令docker version #显示docker的版本信息docker info #docker的系统信息,包括镜像和容器的数量docker 命令 --helo #帮助命令帮助文档的地址镜像命令docker images 查看所有本地的主机上的镜像wangkuo@ubuntu:~/桌面$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE

2021-05-13 14:32:15 176

转载 HTTP请求错误

HTTP 错误 400400 请求出错由于语法格式有误,服务器无法理解此请求。不作修改,客户程序就无法重复此请求。HTTP 错误 401401.1 未授权:登录失败此错误表明传输给服务器的证书与登录服务器所需的证书不匹配。请与 Web 服务器的管理员联系,以确认您是否具有访问所请求资源的权限。401.2 未授权:服务器的配置导致登录失败此错误表明传输给服务器的证书与登录服务器所需的证书不匹配。此错误通常由未发送正确的 WWW 验证表头字段所致。请与 Web 服务器的管理员联系,以确认您是否

2021-04-15 10:17:10 264

原创 JDK安装和配置环境变量

JDK安装和配置环境变量从零开始学java1. 安装jdk[https://www.oracle.com/java/technologies/javase-downloads.html] (oracle官方jdk下载地址,需要登录oracle账号,如果没有可以先注册) 建议下载java se 8点击JDK Download选择对应系统版本,等待下载即可。下载好之后安装即可(毫无细节可言,只建议改变安装目录)。2. 配置环境变量右键此电脑选择属性选择高级系统设置点击环境变量系统变

2021-04-12 10:16:21 89

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除