第一种方式:chrome-debug

1.现在终端输入一下命令,启动Chrome-debug模式
#windows
a.首先将chrome的环境添加到PATH中
b.进入cmd 命令栏,输入:chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\selenum\AutomationProfile"
对于-remote-debugging-port值,可以指定任何打开的端口。
对于-user-data-dir标记,指定创建新Chrome配置文件的目录。它是为了确保在单独的配置文件中启动chrome,不会污染你的默认配置文件。 #mac
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome -remote-debugging-port=9999
2.代码中实现
import allure
from selenium import webdriver
from selenium.webdriver.common.by import By class TestHomework:
# 初始化driver
def setup_method(self):
chrome_options = webdriver.ChromeOptions()
chrome_options.debugger_address = "127.0.0.1:9999"
self.driver = webdriver.Chrome(options=chrome_options) self.driver = webdriver.Chrome()
with allure.step("打开testerhome"):
self.driver.get("https://testerhome.com")
self.driver.implicitly_wait(10) def teardown_method(self):
self.driver.quit()
def test_info(self):
self.driver.find_element(By.CSS_SELECTOR, "#main-nav-menu a[href*='topics']").click()

第二种方式:通过添加cookie



import time

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWait class TestCookies:
def setup(self):
self.driver = webdriver.Chrome()
self.driver.implicitly_wait(3)
self.driver.get("https://work.weixin.qq.com/wework_admin/frame#contacts")
cookies = {
"wwrtx.vst": "19NQ2XtpdMSwwUH6pWX7FsQzCBGQ_ykd68GEdTXYEInKF0mAkFlqMjtJJBakRbMlU5-domydDDsxm9kZtTuBysVewHAXBOF02zONgDyGs9Qxt0NWzvpODJ8Jh_9sFWKXv08JKGe0LEeg-U3DjZcYjmtuXpnMC3sSeFzqM6XMzK7A91NwrcQyghDmlIPNJwNA2I_zfxvIWhi-EVAQzFJwMs2cxfNh5tqeE6SuCYp2N58NjF93c9b1xSkH4BVuwTsjNDzxWD2lh01VfQsWEgerBg",
"wwrtx.d2st": "a3327543",
"wwrtx.sid": "5KLjjmW-aMstJ0AquQESE7Zesy2gaWElilhy_KxvWmOlq7vkFbDlwaBDVCwcvyzE",
"wwrtx.ltype": "1",
"wxpay.corpid": "1970324954080438",
"wxpay.vid": "1688851903656484",
}
for k, v in cookies.items():
self.driver.add_cookie({"name": k, "value": v}) self.driver.get("https://work.weixin.qq.com/wework_admin/frame#contacts") def teardown(self):
time.sleep(3)
self.driver.quit() def test_01(self):
WebDriverWait(self.driver, 5).until(
expected_conditions.visibility_of_element_located((By.CSS_SELECTOR, ".ww_operationBar:first-child "
".js_add_member"))) self.driver.find_element(By.CSS_SELECTOR, ".ww_operationBar:first-child .js_add_member").click()

selenium-绕过登录的更多相关文章

  1. Selenium绕过登录的实现

    1.使用命令行启动Chrome:Mac:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome -remote-debugging ...

  2. Selenium中使用Cookies绕过登录

    在使用selenium测试后台时常常每个流程都需要走登录流程,这样自然比较浪费时间.如果遇到登录需要输入验证码等情况,就可能出师未捷身先死. 在Web应用中,登录状态通常是通过Cookie中对应的se ...

  3. Selenium WebDriver对cookie进行处理绕过登录验证码

    现在几乎所有登录页面都会带一个验证码,做起自动化这块比较麻烦, 所以要绕过网站的验证码. 首先需要手动登录一次你的测试网站,去chrome的F12里获取这个网站的cookie信息,找到对应的保存登录信 ...

  4. Selenium WebDriver 对Cookie进行处理绕过登录验证码

    首先需要手动登录一次你的测试网站,去Chrome的F12中获取这个网站的cookie信息,找到对应的保存登录信息的cookie,接下来在代码中将上述的cookie信息通过webdriver写入的自动化 ...

  5. selenium+python 绕过登录进行测试

    多个Py文件进行多线程测试时,每次登录是很麻烦的事情,所以通过cookie登录,可以绕过登录操作      但是至少需要正常登录一次才能获取到cookie 然后使用cookies进行登录

  6. LR测试登陆后进行的操作时 绕过登录

    oadrunner web_add_cookie web_add_cookie 这个的函数原来真的能过逃过登录,哈哈,这个苦苦纠结我的问题呀. 函数原型:int web_add_cookie( con ...

  7. 破解第一课:NOP绕过登录界面

    第一步 打开软件,任意输入密码,提示“用户密码错误还有2次机会” 第二步 OD载入软件,右键-----中文搜索引擎---智能搜索 按下CTRL+F,打开查找,输入“密码错误”,在结果中双击找到的结果 ...

  8. 4 使用Selenium模拟登录csdn,取出cookie信息,再用requests.session访问个人中心(保持登录状态)

    代码: # -*- coding: utf-8 -*- """ Created on Fri Jul 13 16:13:52 2018 @author: a " ...

  9. 3 使用selenium模拟登录csdn

    之前通过F12开发者模式调试,获取网站后台服务器验证用户名和密码的URL之后,再构造post数据的方式会存在一个问题,就是对目标网站的验证机制不明确,构造post数据除了用户名和密码之外,还可能有更复 ...

  10. selenium(python)登录时账号密码错误提示语

    selenium(python)登录时账号密码错误提示语的获取 可以用text

随机推荐

  1. python之requests.session()使用

    背景:使用requests.session会话对象先登录至豆瓣网,再进入“我的豆瓣”. 首先说一下,为什么要进行会话保持的操作? requests库的session会话对象可以跨请求保持某些参数. 说 ...

  2. JWT伪造攻击

    JWT修改伪造攻击 什么是JWT? JSON Web Token(JSON Web令牌)是一种跨域验证身份的方案.JWT不加密传输的数据,但能够通过数字签名来验证数据未被篡改(但是做完下面的WebGo ...

  3. 刀哥多线程自动释放池autoreleasepool

    自动释放池 作用 自动释放对象的 所有 autorelease 的对象,在出了作用域之后,会被自动添加到最近创建的自动释放池中 自动释放池被销毁或者耗尽时,会向池中所有对象发送 release 消息, ...

  4. [程序员代码面试指南]第9章-在两个长度相等的排序数组中找到第k小的数(二分)

    题目 给定两个有序数组arr1和arr2,再给定一个整数k,返回所有的数中第k小的数. 题解 利用题目"在两个长度相等的排序数组中找到第上中位数"的函数 分类讨论 k < 1 ...

  5. 【好消息】博客迁移到github,求关注,求star,求支持

    博客迁移到github 地址:https://github.com/dirkhe1051931999/hjBlog

  6. JWT理论理解

    什么是JWT Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准(RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的 ...

  7. python中的方向控制函数

    方向控制函数:控制海龟方向,包含绝对角度&海龟角度 改变海龟运行方向,让海龟转向 angle :改变行进方向,将海归运行方向改变为某一个绝对的角度 例如 将坐标系中的海龟方向改变为绝对系中的4 ...

  8. Docker之简单操作

    安装完Docker后,我们就可以与Docker进行交互来创建和管理容器等操作. 容器生命周期管理: 创建一个新的容器并运行一个命令 docker run [OPTIONS] IMAGE [COMMAN ...

  9. Python 之父为什么嫌弃 lambda 匿名函数?

    Python 支持 lambda 匿名函数,其扩展的 BNF 表示法是lambda_expr ::= "lambda" [parameter_list] ":" ...

  10. 嘿!Mybatis

    简介 什么是Mybatis MyBatis 是一款优秀的持久层框架 它支持自定义 SQL.存储过程以及高级映射. MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作. My ...