微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

关于selenium准备工作中遇到的一些问题以及解决办法

当前项目采用的是统一账号,使用扫码登录,而现在的问题是:没有账号密码、登陆后没有保存cookies信息,导致每次使用selenium都会跳转登录页发呆,于是我找了一下,发现一种能够先打开一个浏览器,使用selenium时可以直接在这个已打开的浏览器中进行操作的方法

首先将chrome文件的路径添加到系统变量的path中,然后在cmd中输入:chrome.exe --remote-debugging-port=9222 --user-data-dir="D:\selenium_ui_auto\chrome_temp"

其中 “--remote-debugging-port=”自定义端口、“--user-data-dir=” 设置配置信息路径;

python中的代码

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress","127.0.0.1:9222")
chrome_driver = r'C:\Program Files\Google\Chrome\Application\chromedriver.exe'  #chrome驱动路径
driver = webdriver.Chrome(chrome_driver, options=chrome_options)

后续使用driver进行定位操作即可。

 

而每次使用cmd命令也会很麻烦,所以可以创建一个def去执行cmd命令

#-*- coding:utf-8 -*-
import os
def os_cmd(cmd):
    os.system(cmd)

if __name__ == '__main__':
    a = 'chrome.exe --remote-debugging-port=9222 --user-data-dir="D:\selenium_ui_auto\chrome_temp"'
    os_cmd(a)

此处可能会遇见乱码问题,需要去设置的编码中将编码格式设置为GBK,添加环境变量后需要重新启动pycharm和cmd

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐