【Python】Selenium模拟在输入框里,一个字一个字地输入文字

我们平常在使用Selenium模拟键盘输入内容,常用的是用send_keys来在输入框上输入字:

基本的输入方式:

python 复制代码
input_element= driver.find_element(By.ID, 'searchBox')
input_element.send_keys("我也爱你") #给骚骚的自己发个骚话

不过这种方法,如果完全流畅地把所有内容一下子输完,很容易会被对方网站通过行为识破,感觉普通人也不能一下子就把内容填完,复制粘贴也得要一些时间啦。

(更重要的是:要是给别人表演一下爬虫,一个字一个字地打出来,感觉更酷一点)

所以我在写这部分的时候改进了输入的方式。

想要模拟人在一个字一个字地敲键盘,让输入框一个字一个字得打出来。

逻辑也很简单:

只需要将输入的文字,在for循环下,一个个显示出来就好了,然后在每一次循环间,设置一个短暂的时间睡眠sleep:

python 复制代码
text="在文本框里需要传入的信息" #需要替换
interval=0.1
for word in text:
    element.send_keys(word)
    time.sleep(random.randint(int(interval * 500), int(interval * 1500)) / 1000)

当然这个好方法,也可以打包成def,以后遇到直接调用就可以了,很方便~

相关推荐
东莞市云毅网络有限公司1 小时前
AI 引用句逐条回指原文:让回答可回溯的校验实现
python·数据清洗·rag·企业知识库·文档解析
Sarvartha3 小时前
final 关键字
java·开发语言
数字融合3 小时前
透明化视频三维矿山井下照明重建技术
人工智能·python·数码相机
yi0113 小时前
LeetCode 219:存在重复元素 II——哈希表记录“最近一次出现的位置”
数据结构·人工智能·笔记·python·算法·leetcode·哈希表
程序员Sunday3 小时前
JavaScript 事件循环面试题,宏任务与微任务怎么执行|Sunday面试指南
开发语言·javascript·面试·校招·事件循环·程序员sunday
zhangzeyuaaa4 小时前
Ruby 多线程、GVL(GIL)与 Mutex 完全指南
开发语言·前端·ruby
Marst Code5 小时前
上位机开发日记 · 第 2 篇 · 架构先行:六层分层与边界
python
李日华大战鸡红5 小时前
FOC状态空间方程模型推导(学习记录)
python·学习·线性代数
谢亮_vipxieliang5 小时前
用 PHP 构建轻量级 REST API:从路由到鉴权的完整实践
开发语言·后端·php
思无邪666 小时前
用 AI 做 JS 逆向:从抓包到复现的完整方法论
开发语言·javascript·人工智能