A. 登录linux服务器时设置了交互菜单选择你要登录的系统,如何使用python编程实现自动化选择要登录的系统
1.程序怎么判断你期望的系统是哪个?
2.python可以实现自动登陆
3.难点在于,第一点
4.你准备使用什么技术实现?
5.机器学习?人脸检测?动作跟踪?and so on ?
6.希望可以帮助,请采纳,谢谢!
B. python接口自动化之token登录
前言
有些登录不是用cookie来验证的,是用token参数来判断是否登录。
token传参有两种一种是放在请求头里,本质上是跟cookie是一样的,只是换个单词而已;另外一种是在url请求参数里,这种更直观。
一、登录返回token
1.如下图的这个登录,无cookies
2.但是登录成功后有返回token
二、请求头带token
1.登录成功后继续操作其它页面,发现post请求的请求头,都会带token参数
2.这种请求其实比cookie更简单,直接把登录后的token放到头部就行
三、token关联
1.用脚本实现登录,获取token参数,获取后传参到请求头就可以了
2.如果登录有验证码,前面的脚本登录步骤就省略了,自己手动登录后获取token
import requests
header = { # 登录抓包获取的头部
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0",
"Accept": " / ",
"Accept-Language": "zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3",
"Accept-Encoding": "gzip, deflate",
"Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
"X-Requested-With": "XMLHttpRequest",
"Content-Length": "423",
"Connection": "keep-alive"
}
body = {"key1": "value1",
"key2": "value2"} # 这里账号密码就是抓包的数据
s = requests.session()
login_url = " http://xxx.login " #自己找带token网址
login_ret = s.post(login_url, headers=header, data=body)
token = login_ret.json()["token"]
post_url = " http://xxx "
header["token"] = token
header["Content-Length"]="9"
body1 = {
"key": "value"
}
post_ret = s.post(post_url, headers=header, data=body1)
print post_ret.content
C. python+selenium自动化写登录脚本时,弹出的第三方登录页面该如何定位元素
importtime
defBai():
try:
browser=webdriver.Chrome()
browser.get(url)
wait=WebDriverWait(browser,10)
#定位网络登陆按钮
browser.find_element_by_xpath('//*[@id="u1"]/a[7]').click()
time.sleep(5)
#qq登陆
browser.find_element_by_xpath('//*[@id="pass_phoenix_btn"]/ul/li[1]/a').click()
#切换至qq登陆窗口
time.sleep(5)
browser.switch_to.window(browser.window_handles[1])
#切换至账户密码框
browser.switch_to.frame('ptlogin_iframe')
#账户登陆按钮
browser.find_element_by_xpath('//*[@id="switcher_plogin"]').click()
user=browser.find_element_by_id('u')
user.send_keys(账户)
password=browser.find_element_by_id('p')
password.send_keys(密码)
browser.find_element_by_id('login_button').click()
browser.switch_to.window(browser.window_handles[0])
finally:
browser.close()
Bai()
D. appium + python编写自动化脚本
之前一篇博客已经讲述怎样手动使用 appium-desktop启动测试机上的app ,但我们实际跑自动化脚本的过程中,是需要用脚本调用appium启动app的,接下来就尝试写Python脚本启动app并登陆app。环境为Windows10 + Python3.7 + appium1.18.0 + Android手机 + 今日头条app + Pycharm
具体的获取方法请参考 APP自动化测试之appium连接真机启动app ,配置信息如下:
appium在本机开启的话则IP为127.0.0.1,端口默认为4723
我们会看到手机上今日头条app被打开。
我们查看手机,会发现手机正在自动做登录今日头条的app操作,且登录成功。
至此,我们通过编写一个简单的Python脚本完成了登录app的操作,如果加上断言,就是一条完整的用例。
E. 如何用python实现网页自动登录
这个你要用到BP,抓取数据包,通过分析数据包提交的表单,每次调用脚本的时候将表单进行提交,但一般这种可行比较低,看网页的安全性做的如何,如果有验证码和token校验的话你就不用试了。