为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 Python 在 Selenium 中使用用户名和密码对代理进行身份验证

如何使用 Python 在 Selenium 中使用用户名和密码对代理进行身份验证

慕村225694 2023-08-03 17:23:12
我正在尝试使用 Python 在 Selenium 中使用用户名和密码对代理进行身份验证,但当前代码不起作用。我尝试了很多解决方案,但没有一个有效。代理示例,IP = xxx.xx.xx.xxPORT = xxxxxUSERNAME = USERNAMEPASSWORD = PASSWORD我使用了以下代码,driver.execute_script("""          Services.prefs.setIntPref('network.proxy.type', 1);          Services.prefs.setCharPref("network.proxy.http", arguments[0]);          Services.prefs.setIntPref("network.proxy.http_port", arguments[1]);          Services.prefs.setCharPref("network.proxy.ssl", arguments[0]);          Services.prefs.setIntPref("network.proxy.ssl_port", arguments[1]);          Services.prefs.setCharPref('network.proxy.socks', arguments[4]);          Services.prefs.setIntPref('network.proxy.socks_port', arguments[5]);          Services.prefs.setCharPref('network.proxy.socks_username', arguments[6]);          Services.prefs.setCharPref('network.proxy.socks_password', arguments[7]);          """, http_addr, http_port, ssl_addr, ssl_port, socks_addr, socks_port, socks_username, socks_password)我也尝试过其他一些代码片段。我也尝试将值放入警报框中。
查看完整描述

1 回答

?
繁华开满天机

TA贡献1816条经验 获得超4个赞

您可以使用AutoIt来实现此目的。它具有 Python 绑定PyAutoIt。使用 PIP 安装 PyAutoIt 后pip install PyAutoIt,以下代码即可完成您的工作。

import autoit


autoit.win_wait_active("Authentication Required") # title of the dialog box to wait. so it will wait for the Authentication Required dialog

autoit.send("username", 1) # second parameter is the mode (changes how "keys" is processed)

autoit.send("{TAB}") # press tab key to go to the password field

autoit.send("password", 1)

autoit.send("{Enter}") # press enter key

有关 send 方法中第二个参数的更多信息,这里是代码,


def send(send_text, mode=0):

    """

    Sends simulated keystrokes to the active window.

    :param send_text:

    :param mode: Changes how "keys" is processed:

        flag = 0 (default), Text contains special characters like + and ! to

         indicate SHIFT and ALT key presses.

        flag = 1, keys are sent raw.

    :return:

    """

    AUTO_IT.AU3_Send(LPCWSTR(send_text), INT(mode))


查看完整回答
反对 回复 2023-08-03
  • 1 回答
  • 0 关注
  • 100 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信