douyin web端滑动,点选验证码分析

仅用在学习交流,如有侵权,联系删除。
仅用在学习交流,如有侵权,联系删除。
仅用在学习交流,如有侵权,联系删除。

当前douyin web端,请求cookie中有两个很重要的参数,一个就是s_v_web_id,他又被成为fp参数,今天简单的分析下。

1.滑动验证码

第一步,先找个页面触发出滑块

在这里插入图片描述

紧接着打开控制台,找到Application,就可会看到s_v_web_id 参数了。

在这里插入图片描述

这里的s_v_web_id 值等于verify_lfhkbdvj_hWnJhmth_cNhn_4AbE_AX8t_BQl75IINjLfr,再找到network窗口,可以看到有一个https://verify.snssdk.com/captcha/get 接口,该接口主要是获取验证码的。

在这里插入图片描述

在这个接口中有个fp参数,他们两个的值一模一样。

再打开网页源代码,也可以看到这个参数,说明这个参数在请求页面的时候就返回来了。
在这里插入图片描述
当然可以用js 生成出来

function get_fp() {var e = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""), t = e.length, n = (new Date).getTime().toString(36), r = [];r[8] = r[13] = r[18] = r[23] = "_",r[14] = "4";for (var o, i = 0; i < 36; i++)r[i] || (o = 0 | Math.random() * t,r[i] = e[19 == i ? 3 & o | 8 : o]);return "verify_" + n + "_" + r.join("")
}

当然也可以用python 实现一下

def get_fp(self):e = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"t = len(e)milliseconds = int(round(time.time() * 1000))base36 = ''while milliseconds > 0:remainder = milliseconds % 36if remainder < 10:base36 = str(remainder) + base36else:base36 = chr(ord('a') + remainder - 10) + base36milliseconds = int(milliseconds / 36)r = base36o = [''] * 36o[8] = o[13] = o[18] = o[23] = '_'o[14] = '4'for i in range(36):if not o[i]:n = 0 or int(random.random() * t)if i == 19:n = 3 & n | 8o[i] = e[n]ret = "verify_" + r + "_" + ''.join(o)return ret

接下来就是处理图片,识别缺口位置获取距离。

第一步要做的是处理图片的空白区域,这里主要清除滑块的空白。

def clear_white(img):# 清除图片的空白区域,这里主要清除滑块的空白img = cv2.imread(img)rows, cols, channel = img.shapemin_x = 255min_y = 255max_x = 0max_y = 0for x in range(1, rows):for y in range(1, cols):t = set(img[x, y])if len(t) >= 2:if x <= min_x:min_x = xelif x >= max_x:max_x = xif y <= min_y:min_y = yelif y >= max_y:max_y = yimg1 = img[min_x:max_x, min_y:max_y]return img1

第二步是获取缺口距离。

def get_slider_point(slider_path, bg_path):"""获取滑块的缺口坐标slider_path: 缺口图片路径bg_path: 背景图片"""# 处理滑块图片img_fg = clear_white(slider_path)slice_edges_img = cv2.Canny(img_fg, 100, 200)slice_edges_color_img = cv2.cvtColor(slice_edges_img, cv2.COLOR_GRAY2RGB)cv2.imwrite(f"./img/slider_cv_.png", slice_edges_color_img)# 处理背景图片img_bg = cv2.imread(bg_path)temp_edges_img = cv2.Canny(img_bg, 100, 200)temp_edges_color_img = cv2.cvtColor(temp_edges_img, cv2.COLOR_GRAY2RGB)cv2.imwrite(f"./img/bg_cv_.png", temp_edges_color_img)# 获得距离tl = template_match(slice_edges_color_img,temp_edges_color_img, f"img/tl_.png")return tl

第三步 模拟滑块轨迹

  def get_reply(self, real_width, real_height):distance = 0ans = []move_arr = []cur = 0start_time = time.time()t_dis = random.randint(520, 1500)# t_dis = 603# print("行驶距离:", t_dis)while distance < real_width:cur += random.randint(10, 20)mod = self.sigmoidx = int(mod(real_width, cur, 3500))if x > real_width:x = real_widthdistance = xans.append({"x": x,"y": real_height,"relative_time": cur})move_arr.append({"x": x,"y": real_height,"time": cur + start_time})return ans, move_arr

第四步是根据加密生成captcha body 值,代码敏感就不贴了。

dGMFEAAAMlBkSjZCa09VdHhENm9uT2VyYW40Sk5pa1VTdkdncmF2AKDN408eKbacFiODqk9oqyqVE5Mt8Q3kHYJtQ27gd6KSwr5HNYiy2tTzZL0bix/cOP4IoHFklM3WydbOXjrBPceEuPnk3IrjlIu+c97gKgH33RUTydeWIsLkDSAGfjxZKIoFMuGJ8QiW8YaUzFEaO/X/mIlFIp42MT5XxU6KBDNGAi6MEGSqYyCJG9uXp4zRP1cOagcS3UklBYlH1Y1gxfLzXdI5S5T+NpMA4qeaHLMv6tzqKInAFjz+qLa4MvnjLbaNrSGrSZQ+BBpNsPoqQfAHQxl/SdwqxzKbMtY9V6HjGvc463rWz7Y16ETsOxJWsEiyCVo+ieQ9+q7dE0PKIznY6BGTxw+8Q9AY8O+K/YqPX/J50sXBKxwSGS5tIRxPw+wDnc2HJJoEugSncaEgH8CUggPa/CP6M83KzJeNhGbCxmu+xs2Yo9q1HGhM6EfTwhXyRtS2vGW5fznOWwW8SnGbE3z3afsx7Fl9l1ljry4SkuvpRVOz2hW/l64uqm0zOz5hy8TjSBprceTi8CoiG+cssnS74XDRpEdz94V8MDrrBFL+bFNPfusxvKYW0NzT8P1VL9R8Yaz22dykReAz3sBBP0jupIT0Z0w0bo4JE7Zh4k+gZji6wXJPISluVbZ6iBoAEyGw/n/32g8dmtwCpsNwSOlLLd8uBGGC+uKNxzrMeWLuQQ/XS/pgbY8LO/w9zCIFFHg/IvlAwTHI7kwUOR4naZv9xH/g657y/+DtXFyOOjvJAO+wkP7hClPyQlvlqS18JQwzjh6yMmKlZMkCMgba9EDIQEJXeMITHny7VKIghN4C2eJvDbhhJx1Vl6Zq46MZQVw7VVON4d/rHRCkbCzagnTF3ZUXPtFLgOT7zNZ3Vc3eBnfP4XZl7moj/nwpGamV7IsohD7OMuxq80JiQQvj8uuBJmNYrXpQ1feECbYeREnCvM4TPA7MrNPU4rahLUMA7PpeR7E7yIZD6IZdrfmC0x7Zx82L244pWssl+qM4JTZtYFHsxZlGnsB57Dik7woABXnf7E6gvJJyPAkihhlnxY1tW+GciLWTKrk8VkRkNmsriKnDozFr5VRWYmf4RNu8C6ekLBj7qugKXUoLRKiYb5W2ApO0spCiqrmLCGH168+DKMc5SJPInL6MhbVdT4qfKDGIBWFsMTpX/3IcbqpPHZhD+qzrepzfqWHbiHZ9e40ydh5qMcxmRQc1xV5lnJKL3Am53Es7X1qNZW9pOIXT8ZT66d0/WwXhcl4nizmpOuX8ShwIGU75Lu3E0+7lxqPTlMeRwAC/YQA7S5msWluMs7msG4IxDNQveGDANmPOry71L4FIK18bAAPmjF1wQEaXjwK1IFFZXZ12jpFT64o5vjFGZgaGFgENkk2s6FsFLnNAC+QHHLIarC4UwH8LilERIAjPysqKv8/T/5YCHB7jSXFgpqh6cDgJCidUGc60+uTSx+ZJD3izClmgJ2

最后一步就是向https://verify.zijieapi.com/captcha/verify 接口发送post请求就可以了。

最后看下效果,滑块就成功过掉了。

在这里插入图片描述

通过这种生成的 s_v_web_id 值可以用在用户,视频列表等很多接口。

2.点选验证码

当触动验证码弹出点选类型时,会遇到这种。

背景图:

在这里插入图片描述

待识别的文字:

在这里插入图片描述

可以使用ddddocr 模块,它使用的是开源训练数据集和模型,去识别文字的坐标。

识别具体坐标如图:

在这里插入图片描述

识别对应字:

在这里插入图片描述
然后就可以构造请求体了

在这里插入图片描述
接下来模拟行为轨迹,构造密文数据

在这里插入图片描述

并向接口 https://verify.zijieapi.com/captcha/verify 发起post请求就可以成功过掉滑块了。

最后结果如下:

在这里插入图片描述

仅用在学习交流,如有侵权,联系删除。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/36878.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

抖音全接口API

​ from com.dtmilano.android.viewclient import ViewClient def search_douyin_for_recommend_user(douyin_id): # 采集指定抖音账号的关注推荐数据 # 连设备 serialno None if serialno: os.system(adbconnect{}.format(serialno or )) time.sleep(3) device, serialno Vi…

短视频的运营团队分为三种

1、最低配&#xff0c;就是一个人负责所有事情的运营&#xff0c;这个人需要会策划、会拍视频、会表演、会剪辑、会做内容策划、会投放&#xff0c;还要做一些其它的运营上的工作&#xff0c;这种模式在一些真人口播科普类账号比较常见&#xff0c;一个人能做得过来。 2、中级…

短视频代运营服务内容

直播电商没有万能钥匙&#xff0c;不同的品牌面临的应战也都是悬殊的&#xff0c;甚至在不同时期所运用的战略也会不同不小&#xff0c;数据是最有用的反应&#xff0c;继而不断调整查验。满意精准的查询才调带来满意高效的营销效果&#xff0c;抖音代运营服务商让品牌打破冷启…

如何组建短视频运营团队?

越是专业的短视频运营团队&#xff0c;分工就越精细&#xff0c;每部分的工作都应由专人负责。短视频创作者要了解团队成员的构成&#xff0c;根据实际工作需要确定团队人员配置。 短视频运营团队人员构成 导演 短视频作品的总负责人&#xff0c;负责人员的组织、工作协调、短…

新媒体运营教程:了解短视频核心,让短视频运营脱颖而出

在玩法上不断创新的短视频平台&#xff0c;更是推动了UGC时代到来&#xff0c;短视频UGC互动、位置、社交、电商等等&#xff0c;带来用户体验上的更多可能性&#xff0c;释放全民生产力、传播力、社交力与消费力。 短视频市场机遇无穷&#xff0c;所有人都想来分一杯羹&#x…

新媒体短视频代运营公司的优势

新媒体短视频的白热化&#xff0c;催化了市场对新媒体运营岗位的需求&#xff0c;前有各大寺院的招聘&#xff0c;后有各大政府机构新媒体运营的培训&#xff0c;新媒体运营人员供不需求&#xff0c;有的公司不知道如何运营与管理就会找新媒体短视频代运营公司&#xff0c;今天…

短视频运营的目标:引流并转化客户

我们研究短视频运营&#xff0c;小马识途营销顾问建议先搞清短视频运营的定义。短视频其实是新媒体的一种类型&#xff0c;百度百科里对于新媒体运营是这么定义的。 什么是短视频运营&#xff1f; “新媒体运营&#xff0c;是通过现代化移动互联网手段&#xff0c;通过利用微信…

抖音短视频APP——运营策略梳理

本文试着梳理一下抖音APP运用AARRR模型的运营策略。 —— 2019.9.15 一、产品运营策略 1、A&#xff08;Acquisition&#xff09;获取用户 &#xff08;1&#xff09;通过线上渠道进行导流 初创期&#xff0c;抖音在美拍和秒拍都有建立自己的官方账号&#xff0c;将自己平台…

2020短视频及社群运营全攻略

课程背景&#xff1a; 随着短视频和社群的不断发展&#xff0c;现在已经不再是简简单单的音乐个人换场景的玩法了&#xff0c;在短视频巨大的流量面前&#xff0c;一波又一波的内容创业者涌入进来&#xff0c;有做自媒体方向的&#xff0c;有做品牌推广的&#xff0c;也有做教学…

短视频如何运营?分享关于短视频内容运营需注意的三个方面

短视频如何运营&#xff1f;分享关于短视频内容运营需注意的三个方面 可以爆火的短视频往往都有自己的一套运营方案&#xff0c;而针对不同类型的短视频内容&#xff0c;运营的细节也有所区别&#xff0c;但是大致都离不开以下三个方面。 方面一&#xff1a;确认目的。 在运营…

一文搞懂tiktok运营视频策划,从数据分析到运营策略

短视频流行时代&#xff0c;运营们想要做好短视频&#xff0c;讲究高质量的视频输出&#xff0c;这份新手小白快速掌握的tiktok运营视频策划方案一定要看&#xff01; 用户分析 很多零基础的新手小白上来直接拿起摄像机开拍&#xff0c;没有计划毫无章法&#xff0c;看到什么拍…

港联证券|东财暴拉14%,更有牛股13天翻倍!牛市旗手全线沸腾

A股市场忽然热了起来。 4月3日&#xff0c;东方财富大涨14.28%&#xff0c;成交额到达204.58亿元&#xff0c;创下历史新高。 此次东方财富上涨原因一是上周五西藏证监局对公司的处分落地&#xff0c;利空因素有所消化&#xff1b;二是金融工具复杂度高&#xff0c;AIGC&#…

汇正财经靠谱吗?大盘反弹

盘面回顾&#xff1a; 今日沪指全天相对红盘稳定&#xff0c;创业板、深成指均出现冲高回落翻绿&#xff0c;最终未能红盘报收。早上半导体冲高回落&#xff0c;大金融板块走势活跃&#xff0c;中药领涨医药股&#xff0c;一带一路、中字头、建筑建材有表现&#xff0c;到了午盘…

AI数字人产品“世优BOTA”发布会落幕,世优科技纪智辉演讲回顾

4月20日&#xff0c;世优科技式发布了新一代AI数字人产品——“世优BOTA”。在会上&#xff0c;世优科技创始人纪智辉介绍了数字人技术、驱动形式、数字人应用、“世优BOTA”的前世今生及未来。 以下是纪智辉的演讲内容概要&#xff1a; 各位嘉宾、各位朋友&#xff1a;大家下…

出道的第八年,依然AI着......

今天&#xff0c;是数说故事8周岁的生日 8年&#xff0c;和您一起走过2,922天 8年&#xff0c;我们对AI的探索从未停止 8年&#xff0c;我们将数据的热爱进行到底 因为热“AI” 我们与您的故事有了连接 8年的连接&#xff0c;我们与您也擦出了无数花火 我们将每一个闪烁的…

比尔盖茨离婚事件:给想进互联网大厂的人的唯一启示

前几天的五四青年节&#xff0c;当今世界最富有的一对夫妇官宣离婚&#xff0c;瞬间登上热搜第一。 65岁的比尔盖茨和56岁的梅琳达&#xff0c;宣布结束27年的婚姻关系。 其中最让人感慨的是这样一句话&#xff1a; 我们不再相信在生命的下一段还能一起成长。 这是一句极有格…

2019盖茨年信,以及30个关于比尔盖茨的真相

2019年进入了2月&#xff0c;一切都还是崭新的。2019年会是什么样子&#xff0c;2019年应该是什么样子&#xff1f;比尔盖茨有他的答案。昨天晚上&#xff0c;比尔盖茨和妻子梅琳达发布了本年度的公开信。 从2009年开始&#xff0c;比尔•盖茨夫妇每年发布一封公开信&#xff0…

​两封微软内部邮件公开,比尔盖茨被Java折磨到失眠

来源丨经授权转自 51CTO技术栈&#xff08;ID&#xff1a;blog51cto&#xff09; 作者丨云昭 1996年&#xff0c;Sun、Netscape与微软开战。在9月的一个周一的夜晚&#xff0c;盖茨把他对Java的恐惧敲成了电子邮件&#xff0c;发给了他的老伙计&#xff0c;彼时的首席技术官N…

那天,比尔・盖茨差点“砍掉”了这个 160 亿美元的项目:不运行 Windows,是种侮辱...

整理 | 郑丽媛 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 据今年年初微软发布的 2021 年财报显示&#xff0c;其 Xbox 部门在 2021 财年营收了创纪录的 162.8 亿美元。可以预想&#xff0c;如若相关监管部门后续正式批准微软对动视暴雪的收购&#xff0c;今后…

乔布斯VS比尔盖茨

乔布斯与比尔盖茨 在天文学中&#xff0c;当两颗星体轨迹交织&#xff0c;由于引力作用&#xff0c;就会出现双星系统&#xff0c;在计算机业发展的初期&#xff0c;也出现过类似的“双星人物”&#xff1a;史蒂夫.乔布斯、比尔.盖茨。 史蒂夫.乔布斯和比尔.盖茨&#xff0c;虽…