# Generated by Selenium IDE
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
class Test():
def setup_method(self, method):
options = Options()
#和浏览器打开的调试端口进行通信
#浏览器要使用 --remote-debugging-port=9222 开启调试
options.debugger_address = "127.0.0.1:9222"
self.driver = webdriver.Chrome()
def test_(self):
self.driver.get("https://www.baidu.com/")
self.driver.find_element(By.ID, "kw").send_keys("霍格沃兹测试学院")
self.driver.find_element(By.ID, "su").click()
time.sleep(2)
self.driver.find_element(By.LINK_TEXT, "霍格沃兹测试学院 – 测试开发工程师的黄埔军校").click()
使用 cookie
# Generated by Selenium IDE
import shelve
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
class Test():
def setup_method(self, method):
chrome_options = Options()
#和浏览器打开的调试端口进行通信
#浏览器要使用 --remote-debugging-port=9222 开启调试
chrome_options.debugger_address = "127.0.0.1:9222"
self.driver = webdriver.Chrome()
def test_baidu(self):
self.driver.get("https://www.baidu.com/")
self.driver.find_element(By.ID, "kw").send_keys("霍格沃兹测试学院")
self.driver.find_element(By.ID, "su").click()
time.sleep(2)
self.driver.find_element(By.LINK_TEXT, "霍格沃兹测试学院 – 测试开发工程师的黄埔军校").click()
def test_wework(self):
self.driver.get("https://work.weixin.qq.com/")
# 创建或者打开一个数据库
db = shelve.open("cookies")
#cookies = [{'domain': '.work.weixin.qq.com', 'httpOnly': True, 'name': 'wwrtx.sid', 'path': '/', 'secure': False, 'value': 'QggRK2Smqd5_lH6k6RDLimOx5yJ2Lfg5Gf8irncrB648gbArqGhg3bPA5k_NlXPF'}, {'domain': '.work.weixin.qq.com', 'httpOnly': False, 'name': 'wwrtx.d2st', 'path': '/', 'secure': False, 'value': 'a5484050'}, {'domain': '.work.weixin.qq.com', 'httpOnly': False, 'name': 'wwrtx.vid', 'path': '/', 'secure': False, 'value': '1688850888546920'}, {'domain': '.work.weixin.qq.com', 'httpOnly': False, 'name': 'wxpay.vid', 'path': '/', 'secure': False, 'value': '1688850888546920'}, {'domain': '.work.weixin.qq.com', 'httpOnly': False, 'name': 'wxpay.corpid', 'path': '/', 'secure': False, 'value': '1970325091099135'}, {'domain': '.work.weixin.qq.com', 'httpOnly': True, 'name': 'wwrtx.refid', 'path': '/', 'secure': False, 'value': '16764371053223907'}, {'domain': 'work.weixin.qq.com', 'expiry': 1594932599, 'httpOnly': True, 'name': 'ww_rtkey', 'path': '/', 'secure': False, 'value': '2plvpn'}, {'domain': '.work.weixin.qq.com', 'expiry': 1594932599, 'httpOnly': False, 'name': 'wwrtx.c_gdpr', 'path': '/', 'secure': False, 'value': '0'}, {'domain': '.work.weixin.qq.com', 'expiry': 1597497421, 'httpOnly': False, 'name': 'wwrtx.i18n_lan', 'path': '/', 'secure': False, 'value': 'zh-cn'}, {'domain': '.qq.com', 'expiry': 2147483647, 'httpOnly': False, 'name': 'RK', 'path': '/', 'secure': False, 'value': 'exywTkwmcl'}, {'domain': '.qq.com', 'expiry': 1597489128, 'httpOnly': False, 'name': 'lskey', 'path': '/', 'secure': False, 'value': '00010000db2ca3a4bb964b0eed65356b900e1beae1f7a34e9e1b87fec2788e87760b807c4cfa59f7f489949c'}, {'domain': '.qq.com', 'expiry': 1596428506, 'httpOnly': False, 'name': 'ptui_loginuin', 'path': '/', 'secure': False, 'value': '742976679'}, {'domain': '.qq.com', 'expiry': 1656768418, 'httpOnly': False, 'name': '_ga', 'path': '/', 'secure': False, 'value': 'GA1.2.1486340881.1579059579'}, {'domain': '.qq.com', 'expiry': 2147385600, 'httpOnly': False, 'name': 'o_cookie', 'path': '/', 'secure': False, 'value': '1256305343'}, {'domain': '.qq.com', 'expiry': 2147483646, 'httpOnly': False, 'name': 'ptcz', 'path': '/', 'secure': False, 'value': '21184e650f6a6683b1089473bd27234cc787221ed0761e762ef7c706c95c1153'}, {'domain': '.work.weixin.qq.com', 'httpOnly': True, 'name': 'wwrtx.vst', 'path': '/', 'secure': False, 'value': 'SSvtaG0HPX3LrumGQo-0d8z8F9NDIt2-SJar2k4JleK8PcHpjPYXXt2qyrgbY5zCAiTy4KEuHlMTID5PRPO-ibY9A298-8R7Rg05GZ0CvuGsu_LU2mYtkkbpM1kHBlNrdFf1zbkZlOQ4P6Y35tIelk5ewe1ePJ9zXUcDsxuTVU-9Ocwk4YT31_gwl4WtraACGf4-ngdcxZ4GrTw3s5b9g5ktpP6kg9bi1sL_noxgoRxxowU9YO2pGe1X8_oKqXBVQmrSNTuQObkteGYkLqmI_w'}, {'domain': '.qq.com', 'expiry': 1597489128, 'httpOnly': False, 'name': 'luin', 'path': '/', 'secure': False, 'value': 'o1256305343'}, {'domain': '.qq.com', 'expiry': 1897608032, 'httpOnly': False, 'name': 'tvfe_boss_uuid', 'path': '/', 'secure': False, 'value': 'db5af6172ed41f4b'}, {'domain': '.qq.com', 'expiry': 2147385600, 'httpOnly': False, 'name': 'pgv_pvi', 'path': '/', 'secure': False, 'value': '535707648'}, {'domain': '.work.weixin.qq.com', 'httpOnly': True, 'name': 'wwrtx.ltype', 'path': '/', 'secure': False, 'value': '1'}, {'domain': '.work.weixin.qq.com', 'httpOnly': True, 'name': 'wwrtx.ref', 'path': '/', 'secure': False, 'value': 'direct'}, {'domain': '.work.weixin.qq.com', 'expiry': 1625229244, 'httpOnly': False, 'name': 'Hm_lvt_9364e629af24cb52acc78b43e8c9f77d', 'path': '/', 'secure': False, 'value': '1591409096,1593693242'}, {'domain': '.qq.com', 'expiry': 2147385600, 'httpOnly': False, 'name': 'pgv_pvid', 'path': '/', 'secure': False, 'value': '5034123288'}]
# 将数据存储到 shelve 中
#db["cookies"] = cookies
# 取出数据
cookies = db["cookies"]
#获取 cookies
#print(self.driver.get_cookies())
for cookie in cookies:
if "expiry" in cookie.keys():
cookie.pop("expiry")
# 把字典加入到 driver 的 cookie 中
self.driver.add_cookie(cookie)
self.driver.get("https://work.weixin.qq.com/wework_admin/frame")
self.driver.find_element(By.XPATH, "//*[@id='menu_contacts']").click()
db.close()
作业
完成课上调试代码,将代码贴到下方评论区