手速最快的是电竞选手?错了,是程序员

简介: 手速最快的是电竞选手?错了,是程序员

一、排行榜截图

61e6dd80191c483ab00595aca52a99de.png


648KPM,足足高了第二名100多KPM!

大家也可以去试试自己的KPM有多少,打字测试网站:https://dazi.kukuw.com/


其实这并非手打的,而是使用了selenium来实现自动打字,并增加了一些防止作弊检测的手段,比如:

  1. 动态速度
  2. 随机输错、退格
  3. 错字修正

从而实现打字排行榜第一。


<<点我获取完整源码和【可直接运行】工具,或关注左侧公众号,回复:打字


二、实现效果

image.gif


三、环境要求


1)安装谷歌浏览器,按下图步骤操作,找到谷歌浏览器的版本号:

be2a122d53fd4593bb95c355b9d787c4.png

1c1699d239144899a103099f321dedbb.png


2)然后访问:chromedriver下载地址,下载对应版本的chromedriver(大版本号相同即可),并放在打字工具的同目录下即可。


双击执行工具就可以看到效果了。


四、核心源码讲解


1.在每次循环打字前,设定打字的间隔时间:


    wait_time = random.randint(12, 100)
        time.sleep(wait_time / 1000)  # 控制每次打字的间隔时间


2.另外设置故意打错的概率及要打错几个字:


        error_value = random.randint(1, 20)
        if error_value == 2:  # 当error_value等于2时,代表故意打错
            error_length = random.randint(1, 4)  # 需要打错几个字母
            for k in range(error_length):  # 进行打错操作
                letter_v = random.randint(97, 122)
                letter = chr(letter_v)  # 数字转换为字母
                time.sleep(wait_time / 1000)
                browser.find_element(By.XPATH, '''//*[@id="i_''' + str(i) + '''"]/input[2]''').send_keys(letter)


3.打错后,需要退格再重新输入正常的内容:


            for a in range(error_length):  # 进行退格操作
                keyboard.press(Key.backspace)
                keyboard.release(Key.backspace)
        browser.find_element(By.XPATH, '''//*[@id="i_''' + str(i) + '''"]/input[2]''').send_keys(j)


五、总结


整个代码内容不多,实现也很简单,小伙伴们可以自己拿到源码进行diy,比如:增加可选择登录用户、可自定义选择文章的功能。

目录
相关文章
|
JSON 数据挖掘 API
小红书笔记评论API接口如何使用
小红书作为生活方式分享平台,评论是用户互动的核心形式。通过小红书笔记评论API接口,开发者可高效获取特定笔记下的评论数据(如内容、昵称、时间、点赞数等),用于舆情分析、用户反馈收集和市场调研。请求参数包括`note_id`、`page`、`page_size`、`timestamp`和`sign`,采用HTTP方式调用,返回JSON格式数据,为业务决策提供数据支持。
1079 2
|
10月前
|
SQL 安全 Linux
Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
525 1
Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
|
11月前
|
存储 Java Apache
Java语言操作INI配置文件策略
以上步骤展示了基本策略,在实际项目中可能需要根据具体需求进行调整优化。例如,在多线程环境中操作同一份配置时需要考虑线程安全问题;大型项目可能还需考虑性能问题等等。
403 15
|
人工智能 JSON 安全
全民AI时代,大模型客户端和服务端的实时通信到底用什么协议?
本文将分享 SSE 和 WebSocket 这两个AI大模型应用的标配网络通信协议,一起重新认识下这两位新时代里的老朋友。
1294 0
|
Web App开发 安全 网络安全
tplink虚拟服务器设置方法
为了更全面地理解云服务及其在企业应用中的角色,推荐访问,他们提供了一系列高性能、安全稳定的云服务器解决方案,包括但不限于香港云服务器、高防服务器等,特别适合寻求全球化业务扩展的企业。蓝易云不仅拥有全球化的基础设施布局,还提供针对各种行业定制的全栈云解决方案,助力企业实现云端部署,跨越传统界限,即刻启航云端之旅。
1478 0
|
网络协议
STX (Start of Text) - ASCII值2 (0x02)
STX (Start of Text) - ASCII值2 (0x02)
3010 2
|
Java 测试技术 定位技术
《手把手教你》系列技巧篇(二十三)-java+ selenium自动化测试-webdriver处理浏览器多窗口切换下卷(详细教程)
【4月更文挑战第15天】本文介绍了如何使用Selenium进行浏览器窗口切换以操作不同页面元素。首先,获取浏览器窗口句柄有两种方法:获取所有窗口句柄的集合和获取当前窗口句柄。然后,通过`switchTo().window()`方法切换到目标窗口句柄。在项目实战部分,给出了一个示例,展示了在百度首页、新闻页面和地图页面之间切换并输入文字的操作。最后,文章还探讨了在某些情况下可能出现的问题,并提供了一个简单的本地HTML页面示例来演示窗口切换的正确操作。
727 0
|
机器学习/深度学习 数据可视化 算法框架/工具
基于Python的神经网络模型结构框架可视化绘图简便方法
基于Python的神经网络模型结构框架可视化绘图简便方法
736 1
|
SQL 安全 数据挖掘
隐私计算实训营第7讲:隐语SCQL的架构详细拆解丨隐私计算实训营 第1期
SCQL是安全协作查询语言,让不信任的多方能在保护隐私的前提下进行联合数据分析。它假设参与者半诚实,支持多方(N&gt;=2)合作,且具备SQL语法支持和性能优化。SCQL提供类似SQL的用户界面,通过CCL机制允许数据所有者控制数据使用权限。系统基于SPU的MPC框架运行,适用于多个应用场景。
747 0
|
消息中间件 测试技术 Linux
GoogleTest 测试框架
GoogleTest 测试框架