在爬取需要输入账号密码的网页时,我们需要找到可填写内容的标签。记得之前写过,但是没有记住。

这回重新梳理一下,如何可找到这个标签

以极验后台登录网站为例:https://auth.geetest.com/login/

代码:D:\spider1111111111111111ex\venv\滑块验证码\CrackGeetest-master\crack.py

初始化
url = 'https://account.geetest.com/login'
browser = webdriver.Chrome() #谷歌浏览器的模拟driver
self.wait = WebDriverWait(self.browser, 20)
self.email = EMAIL
self.password = PASSWORD
browser.get(self.url)  #get请求
email = self.browser.find_element_by_xpath('//input[@placeholder="请输入邮箱"]')
password = self.browser.find_element_by_xpath('//input[@placeholder="请输入密码"]')
email.send_keys(self.email)
password.send_keys(self.password)
#这是自动输入账号密码的代码

可是在找寻输入标签的时候进入了误区,一直没有做有些忘了,一时没有想明白就用百度重新试验了下。在百度的input中是这样的
<input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">,。
之后又输入了内容查看,是这样的:
<input id="kw" name="wd" class="s_ipt" value="p我输入的内容" maxlength="255" autocomplete="off">
确认了输入的内容确实进入了标签input的属性value中了
注意:在查看源码时检查下的Element,里面的代码不是完整的,有javesprict动态是看不到的,需要在Network下选择www.baidu.com(例百度)Respone中。 回到极验后台登录中,用XPath找到input标签,
email = self.browser.find_element_by_xpath('//input[@placeholder="请输入邮箱"]')
再用send_kets()发送
email.send_keys(self.email)
这样就可成功输入账号密码了。还可以调用time.sleep(5),来等待网络 注意在模块中已有延时等待。延时等待分为隐式等待,与显式等待,显式等待效果好一些,在之后的内容会有应用
 

input内容,输入账号密码的更多相关文章

  1. windows上解决git每次重复输入账号密码

    win7电脑: 1.在 C:\Users\Administrator 下 编辑 .gitconfig文件 2.在原有内容下添加一行(此行作用为自动保存,保存修改后再使用一次GIT,输入账号密码后下次即 ...

  2. 取消chrome浏览器下input和textarea的默认样式;html5默认input内容清除“×”按钮去除办法

    取消chrome浏览器下input和textarea的默认样式: outline:none;/*清空chrome中input的外边框*/ html5默认input内容清除“×”按钮去除办法: inpu ...

  3. Ubuntu16.04 802.1x 有线连接 输入账号密码,为什么连接不上?

    ubuntu16.04,在网络配置下找到802.1x安全性,输入账号密码,为什么连接不上?   这是系统的一个bug解决办法:假设你有一定的ubuntu基础,首先你先建立好一个不能用的协议,就是按照之 ...

  4. linux服务器git pull/push时提示输入账号密码之免除设置

    1.先cd到根目录,执行git config --global credential.helper store命令 [root@iZ25mi9h7ayZ ~]# git config --global ...

  5. 时时监听input内容的改变

    心得:我们都知道input有一个change事件,但是是在input元素失去焦点的时候发生,不能时时的监听input内容的改变. 刚开始的时候我是想用setInterval设置计时器的原理定时监听in ...

  6. TortoiseGit拉取或推送,输入账号密码后提示 HTTP Basic: Access denied fatal: Authentication failed 解决方案

    TortoiseGit拉取或推送项目,输入账号密码后,提示 HTTP Basic: Access denied fatal: Authentication failed. 大体意思是,HTTP基本认证 ...

  7. linux git pull/push时提示输入账号密码之免除设置

    1.先cd到根目录,执行git config --global credential.helper store命令 [root@iZ25mi9h7ayZ ~]# git config --global ...

  8. 使用disavled属性锁定input内容不可以修改后,打印获取不到对应的值

    当我们需要锁定input内容不让修改时,可以使用disabled="disabled"和readonly="readonly", 官方的解释是:disabled ...

  9. 微信小程序获取输入框(input)内容

    微信小程序---获取输入框(input)内容 wxml <input placeholder="请输入手机号码" maxlength="11" type= ...

随机推荐

  1. ch4 圆角框

    固定宽度的圆角框 只需要两个图像:一个应用于框的顶部,一个应用于底部 <div class="box"> <h2>Lorem Ipsum</h2> ...

  2. 「NOIP2011」观光公交

    传送门 Luogu 解题思路 有点麻烦,幸好 \(O(n^2)\) 能过... 贪心地想一想,我们如果要用加速器,肯定是要选择车上人数最多的时段加速. 但是我们就会面临这样的情况: 加速了,带来了增益 ...

  3. 前端学习笔记系列一:9 js中数组的拷贝

    拷贝分为浅拷贝和深拷贝,在JavaScript中能够实现这两种拷贝的方式也是多种多样.以下是一维数组实现深拷贝和浅拷贝的各种方式. 一.浅拷贝 1.赋值 赋值是最直接的一种浅拷贝. let arr3 ...

  4. 嵊州普及Day5T1

    题意:有n个商店,自家商店的定价不可高于任何一家商店定价,求自家商店最高定价. 思路:拿个变量打擂台即可,不用解释太多. 见代码: #include<iostream> #include& ...

  5. pgsql 查询jsonb中包含某个键值对的表记录

    pgsql 查询jsonb中包含某个键值对的表记录 表名 table_name ,字段 combos 类型为 jsonb 可为空,示例内容如下, $arr_combos = [ ['id' => ...

  6. 第一个Vue.js案例

    第一个Vue.js案例 使用Vue有如下几步 引入文件头 加入数据输出框 创建Vue对象,定义数据 案例: <!DOCTYPE html> <html lang="en&q ...

  7. Vue-cli3与springboot项目整合打包

    一.需求        使用前后端分离编写了个小程序,前端使用的是vue-cli3创建的项目,后端使用的是springboot创建的项目,部署的时候一起打包部署,本文对一些细节部分进行了说明.   二 ...

  8. extract()和extact_first()的区别

    extract()和extact_first()都是提取Selector的data部分.但现在你要先知道什么是Selector. Selector是选择器的意思.具体定义我不知道,但通过下面的例子,你 ...

  9. QQ企业通----类库的设计----UDPSocket组件等

    知识点: IPEndPoint    将网络端点表示为 IP 地址和端口号. UdpClient   提供用户数据报 (UDP) 网络服务. UdpClient对象.Close 关闭 UDP 连接. ...

  10. 洛谷P1351 联合权值

    \(\Large\textbf{Description:}\) \(\large一棵树,父子之间距离为1,求距离为2的两点点权之积的最大值与和.\) \(\Large\textbf{Solution: ...