1

I am trying to authenticate proxy with username and password in Selenium using Python but the current code is not working. I have tried many solutions but none of them worked.

Proxy example,

IP = xxx.xx.xx.xx PORT = xxxxx USERNAME = USERNAME PASSWORD = PASSWORD 

I have used the following code,

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) 

I have tried some other code snippets also. I tried to place values into alert boxes also.

    1 Answer 1

    2

    You can achieve this by using AutoIt. And it has Python binding PyAutoIt. Once you installed PyAutoIt using PIP - pip install PyAutoIt, the following code does your job.

    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 

    For more information about the second parameter in the send method, here is the code,

    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)) 

      Start asking to get answers

      Find the answer to your question by asking.

      Ask question

      Explore related questions

      See similar questions with these tags.