关于使用selenium工具调用Firefox浏览器登录淘宝、京东web端的试验
**
关于使用selenium工具调用Firefox浏览器登录淘宝、京东web端的试验
**
1、环境配置(软件安装相关知识大家可在网上查找)
以下是我使用的版本:
Firefox 24.0 selenium-2.53.2
2、测试脚本
此次使用的语句都是selenium中最基础的元素定位方式
(1)首先测试使用账号密码登录淘宝web端,相关代码如下:
在此处使用driver.find_element_by_id(“J_Quick2Static”).click()语句切换到账号密码登录方式
代码运行后没有报错,但是却没有成功登录笔者账号,转到登录页面发现
按照登录页面所述,滑动滑块后却显示:哎呀,出错了,点击刷新再来一次(error:1M46j)
反复尝试,始终在这一页卡住,无法再进行下去。此时首先是怀疑自己的代码有问题,但是执行也都没报错,一切看起来没什么问题,很无奈,只能找度娘看看什么情况了……
大家可以参考一下下面这位大神的分析文档,里面对于模拟登录失败的原因通俗易懂的做了相关分析:
参考文档
因此,在web端模拟登陆可以得出结论:淘宝对于模拟登录抓取cookie的行为动作进行了一些判断,我们无法使用脚本来代替人为的操作,此次尝试失败。
(2)测试使用二维码登录淘宝web端
在账号密码失败以后,不死心的我又准备试一下二维码登录能否成功,二维码登录和账号密码登录原理大概相同,只是缺少了账号密码文本框的获取,在click登录button时,给了系统一些休眠时间,在这段时间,我们需要手动使用app客户端扫二维码登录,代码如下:
在二维码登录时,代码按照预期那样正常运行。
因此笔者大胆猜想:淘宝web端对于模拟抓包行为并不是贯穿于每一步的,只是针对于账号密码输入,和二维码操作这些关键点进行判定,只要这些关键点是人工输入,就可以登录成功。
在测试完淘宝web端以后,不禁想再看看,其他类似的网站是否也是类似,对于模拟抓包如此敏感,所以,接下来对京东web端进行简单验证。
(3)测试使用账号密码登录京东web端
测试web端京东商城账号密码登录,脚本和淘宝逻辑相同:
但是在输入账号密码点击登录后,也会出现需要人为的进行验证
此时登录button click以后,sleep一段时间,在这期间手动滑动完成拼图,即可账号密码登录成功。
综上所述:在同时用自动化脚本登录淘宝、京东web端时,淘宝会对行为进行判别,但是京东不会。
关于使用selenium工具调用Firefox浏览器登录淘宝、京东web端的试验相关推荐
- 用selenium模拟浏览器登录淘宝识别滑动验证码
用selenium模拟浏览器登录淘宝,使用账号密码的方式登录淘宝,但是在登录的时候遇到需要滑动验证,使用selenium模拟点击滑块,滑动验证码完成登录. 本文的代码现测可用.做个记录,方便以后查看. ...
- Python《使用Selenium 和pyautogui 实现自动登录淘宝》
有了上一博文学习即基础,这一节想来学习下自动登录淘宝. 直接整上测试代码: from selenium import webdriver # import logging import time fr ...
- Python模拟浏览器登录淘宝
因为前几天写了个Python登录教务网的爬虫,这几天又突然想到用Python登录淘宝试试,于是二话不说,代码走起.本来以为很简单,但一写我就傻眼了,登淘宝的涉及到很多东西,验证码,加密算法,用http ...
- selenium工具启动Chrome浏览器时配置选项详解
mb62abf3afb54fb2022-06-18 00:02:10 文章标签chromechrome浏览器加载文章分类虚拟化云计算阅读数1473 前言 1. Chromeoptions 是Chrom ...
- 190823-自动控制浏览器进行淘宝登录操作(selenium自动化测试框架)
自动控制浏览器进行淘宝登录操作,利用了selenium这个第三方库,让浏览器自动进行模拟点击页面内容.输入账号密码等操作,以下是其逻辑以及执行代码: 逻辑: 1.分别导入webdriver,和WebD ...
- python目录名称无效_python - NotADirectoryError:[WinError 267]通过Selenium Python调用Firefox时目录名称无效错误...
我正试图从下面的python代码调用使用Selenium webdriver的firefox浏览器..from selenium import webdriver # Initializing the ...
- Python爬虫——Selenium安装配置FireFox浏览器
Selenium安装配置FireFox浏览器 前置需求: 1. 下载安装FireFox浏览器和Geckodriver 1.1 Windows下载 1.2 Linux下载 2. 使用Selenium调用 ...
- selenium中启动firefox浏览器时设置代理、加载配置文件、加载某个插件以及firefox没有安装在默认路径下的代码写法
selenium 中启动firefox浏览器的六种方式,所用的是java 1.如果浏览器没有安装在默认路径下,则用 System.setProperty("Webdriver.firefox ...
- Python用 selenium 模块控制Firefox浏览器
Python用 selenium 模块控制Firefox浏览器 需要的东西: Firefox浏览器下载地址: http://getfirefox.com/ selenium包: https://pyp ...
最新文章
- y电容如何选型_陶瓷气体放电管,如何选型?
- 删除linux系统中的ifcfg-eth0.bak
- 得到qq正在登录的qq号
- 栈一:用两个栈实现队列
- oracle逗号分隔函数
- XML 与动态添加控件
- 100 个网络基础知识
- Spring中bean实例化的三种方式:默认构造、静态工厂、实例工厂
- ValueError: No JSON object could be decoded?此种异常的解决方案之一
- java 锁的重入_Java 的可重入锁和不可重入锁
- python避障小车_[TPYBoard - Micropython之会python就能做硬件 8] 学习使用超声波模块制作避障小车...
- 【ECharts教程】在实战中学习(超炫酷的数据可视化大屏)
- vue创建项目自定义配置
- 机器人控制框架行为树py_trees <一、行为树介绍>
- 微信小程序体验版、正式版的发布流程
- xxl-job整合到微服务
- 【微信小程序学习笔记02理解与初始准备】【实战天气微信小程序】
- Unity3D---通过Shader实现美颜
- 如何绘制程序流程图?绘制程序流程图工具介绍及功能讲解
- 计算机网络并行传输和串行传输,并行传输和串行传输的区别是什么