Selenium WebDriver.get(url) does not open the URL

前端 未结 18 1833
醉梦人生
醉梦人生 2020-11-29 07:36
from selenium import webdriver
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.support.ui impo         


        
相关标签:
18条回答
  • 2020-11-29 07:57

    It is a defect of Selenium.
    I have the same problem in Ubuntu 12.04 behind the proxy.

    Problem is in incorrect processing proxy exclusions. Default Ubuntu exclusions are located in no_proxy environment variable:

    no_proxy=localhost,127.0.0.0/8
    

    But it seems that /8 mask doesn't work for selenium. To workaround the problem it is enough to change no_proxy to the following:

    no_proxy=localhost,127.0.0.1
    

    Removing proxy settings before running python script also helps:

    http_proxy= python script.py
    
    0 讨论(0)
  • 2020-11-29 07:58

    I was having the save issue. I assume you made sure your java server was running before you started your python script? The java server can be downloaded from selenium's download list.

    When I did a netstat to evaluate the open ports, i noticed that the java server wasn't running on the specific "localhost" host:

    When I started the server, I found that the port number was 4444 :

    $ java -jar selenium-server-standalone-2.35.0.jar 
    Sep 24, 2013 10:18:57 PM org.openqa.grid.selenium.GridLauncher main
    INFO: Launching a standalone server
    22:19:03.393 INFO - Java: Apple Inc. 20.51-b01-456
    22:19:03.394 INFO - OS: Mac OS X 10.8.5 x86_64
    22:19:03.418 INFO - v2.35.0, with Core v2.35.0. Built from revision c916b9d
    22:19:03.681 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
    22:19:03.683 INFO - Version Jetty/5.1.x
    22:19:03.683 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
    22:19:03.685 INFO - Started HttpContext[/selenium-server,/selenium-server]
    22:19:03.685 INFO - Started HttpContext[/,/]
    22:19:03.755 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@21b64e6a
    22:19:03.755 INFO - Started HttpContext[/wd,/wd]
    22:19:03.765 INFO - Started SocketListener on 0.0.0.0:4444
    

    I was able to view my listening ports and their port numbers(the -n option) by running the following command in the terminal:

    $netstat -an | egrep 'Proto|LISTEN'
    

    This got me the following output

    Proto Recv-Q Send-Q  Local Address          Foreign Address        (state)    
    
    tcp46      0      0  *.4444                 *.*                    LISTEN  
    

    I realized this may be a problem, because selenium's socket utils, found in: webdriver/common/utils.py are trying to connect via "localhost" or 127.0.0.1:

    socket_.connect(("localhost", port))
    

    once I changed the "localhost" to '' (empty single quotes to represent all local addresses), it started working. So now, the previous line from utils.py looks like this:

    socket_.connect(('', port))
    

    I am using MacOs and Firefox 22. The latest version of Firefox at the time of this post is 24, but I heard there are some security issues with the version that may block some of selenium's functionality (I have not verified this). Regardless, for this reason, I am using the older version of Firefox.

    0 讨论(0)
  • 2020-11-29 07:59

    A spent a lot of time on this issue and finally found that selenium 2.44 not working with node version 0.12. Use node version 0.10.38.

    0 讨论(0)
  • 2020-11-29 07:59

    I was getting similar problem and Stating string for URL worked for me. :)

    package Chrome_Example;
    
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    
    public class Launch_Chrome {
    
        public static void main(String[] args) {
    
            System.setProperty("webdriver.chrome.driver", "C:\\Users\\doyes\\Downloads\\chromedriver_win324\\chromedriver.exe");
            String URL = "http://www.google.com";
            WebDriver driver = new ChromeDriver();
            driver.get(URL);
        }
    
    }
    
    0 讨论(0)
  • 2020-11-29 08:00
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    
    WebDriver driver = new FirefoxDriver();
    driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS);
    driver.get("http://www.google.com");
    
    OR
    
    import org.openqa.selenium.support.ui.ExpectedConditions;
    
    WebDriverWait wait = new WebDriverWait(driver,30);
    driver.get("http://www.google.com");
    //hplogo is the id of Google logo on google.com
    wait.until(ExpectedConditions.presenceOfElementLocated(By.id("hplogo")));
    
    0 讨论(0)
  • 2020-11-29 08:01

    This worked for me (Tested on Ubuntu Desktop 11.04 with Python-2.7):

    from selenium import webdriver
    
    driver = webdriver.Firefox()
    driver.get("http://www.stackoverflow.com")
    
    0 讨论(0)
提交回复
热议问题