Selenio WebDriver.get(url) non apre l’URL

from selenium import webdriver
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.support.ui import WebDriverWait # available since 2.4.0
import time


# Create a new instance of the Firefox driver
driver = webdriver.Firefox()


# go to the google home page
driver.get("http://www.google.com")

Questo apre una finestra di Firefox, ma non aprire un url.

  1. Ho un server proxy(ma la barra degli indirizzi non mostra il passato url)
  2. Ho due profili di Firefox.

1 o 2 essere un problema? se sì, allora come posso risolvere il problema?

Hai fatto a risolvere questo problema ? Incontro con lo stesso problema sul mio ubuntu.
Provare a utilizzare github.com/iamalittletester/thewaiter. Questo può essere utile. Vedi qui howto: imalittletester.com/2018/04/10/…

OriginaleL’autore Neeraj | 2011-09-08

14 risposte

  1. 16

    È un difetto di Selenio.

    Ho lo stesso problema in Ubuntu 12.04 dietro il proxy.

    Problema è il corretto trattamento proxy esclusioni. Di Default Ubuntu esclusioni si trovano in no_proxy variabile di ambiente:

    no_proxy=localhost,127.0.0.0/8
    

    Ma sembra che /8 maschera non funziona per il selenio. Per risolvere il problema è sufficiente per modificare il no_proxy il seguente:

    no_proxy=localhost,127.0.0.1
    

    Rimozione impostazioni proxy prima di eseguire script in python aiuta anche:

    http_proxy= python script.py
    
    +1 su Ubuntu 12.04 – impostazione no_proxy fisso per me
    Non funziona per me su Ubuntu 14.04
    Puoi dare qualche informazione in più su come si imposta no_proxy? Hai chiamato una variabile di ambiente, ma ho provato l’impostazione export no_proxy=localhost,127.0.0.1 e che non fa nulla. E io fraintendendo le tue istruzioni?
    Non per me, MAC

    OriginaleL’autore grdshch

  2. 9

    Ero di fronte esattamente lo stesso problema, dopo aver navigato per un po di tempo, venuto a sapere che è praticamente versione problema di compatibilità bt firefox e selenio. Ho avuto l’ultimo firefox ma il mio Selenio importato era più vecchio, che è la causa del problema. Problema, ma ho risolto dopo aggiornamento selenuim

    pip install -U selenium
    

    OS: windows Python 2.7

    Ti dispiacerebbe condividere il tuo metodo per il recupero corrente URL nel browser aperte? Sto cercando di afferrare la URL di reindirizzamento, ma utilizzando print driver.current_url stampa solo l’URL originale che è stato passato quando ho aperto il browser
    o l’aggiornamento di mozilla 🙂

    OriginaleL’autore Goutham

  3. 1

    @Neeraj

    Ho risolto questo problema, ma non so se è lo stesso motivo.

    In generale, il mio problema è stato causato da alcuni problemi di autorizzazione.

    Ho provato a spostare tutto il mio progetto in ~/:

    mv xxx/~/
    

    e poi mi cambio e dare l’autorizzazione 777:

    chmod -R 777 xxx/
    

    Non ho familiarità con linux autorizzazione in modo che io faccio solo questo per assicurarsi che ho il permesso di eseguire il programma.

    Anche tu non hai il permesso, il selenio programma non richiederà.

    Così, buona fortuna.

    Questo non è esattamente risolvere il problema per me, ma lo ha fatto ottenere me sulla strada giusta. Quando ho installato il selenio-webdriver gemma ho usato sudo gem install selenium-webdriver. Poi ho reinstallato senza l’utilizzo di sudo e risolto il mio problema. È vero che il selenio non verranno eseguiti automaticamente se c’è un problema di autorizzazioni.
    Non si dovrebbe mai usare 777 i permessi. E ‘ molto pericoloso.

    OriginaleL’autore MrROY

  4. 1
    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")));
    

    OriginaleL’autore sachin2013

  5. 1

    Ho risolto questo problema.

    Se il tuo file jar sono precedenti alla versione più recente e il browser è stato aggiornato alla versione più recente, quindi scaricare:

    Ho provato questo e aggiornato al Selenio 3.0.1, ma ancora stesso problema.

    OriginaleL’autore Amit

  6. 0

    Speso un sacco di tempo su questo problema e, infine, rilevato che selenio 2.44 non funziona con nodo versione 0.12.
    Nodo versione 0.10.38.

    OriginaleL’autore kashesandr

  7. -1

    Si prega di dare un’occhiata a questa guida: http://www.qaautomation.net/?p=373
    Hanno uno sguardo da vicino alla sezione “creazione di un’istanza WebDriver”

    Penso che ti manca la seguente linea di codice:

    wait = new WebDriverWait(driver, 30);
    

    Mettere tra

    driver = webdriver.Firefox();
    

    e

    driver.getUrl("http://www.google.com");
    

    Non ho provato, perché io non sto usando il Selenio al momento. Ho una conoscenza di con Selenio 1.x.

    Ho provato anche questo. Io sono in perdita. Semplicemente non aprire qualsiasi url.
    Forse si dispone di un errore di battitura? Nella tua domanda hai scritto: “driver.get(“http:…”)”, ma deve essere “driver.getURL(“http:…”)

    OriginaleL’autore Thomas

  8. -1

    Ho avuto il problema del salvataggio. Presumo che hai fatto in modo che il server java è in esecuzione prima di iniziare il tuo script in python? Java server può essere scaricato dal selenio download elenco.

    Quando ho fatto un netstat per valutare le porte aperte, ho notato che il java server non è in esecuzione su specifiche "localhost" host:

    Quando ho avviato il server, ho trovato che il numero di porta è stato 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 [email protected]
    22:19:03.755 INFO - Started HttpContext[/wd,/wd]
    22:19:03.765 INFO - Started SocketListener on 0.0.0.0:4444
    

    Sono stato in grado di vedere il mio ascolto porte e i loro numeri di porta(l’opzione-n) eseguendo il seguente comando nel terminale:

    $netstat -an | egrep 'Proto|LISTEN'
    

    Questo mi ha fatto il seguente output

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

    Mi resi conto che questo può essere un problema, perché il selenio è presa utils, trovato in: webdriver/common/utils.py sta tentando di connettersi tramite “localhost o 127.0.0.1:

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

    una volta ho cambiato il “localhost” a ” (vuoto virgolette singole per rappresentare tutti gli indirizzi locali), ha iniziato a lavorare. Così ora, la linea precedente da utils.py assomiglia a questo:

    socket_.connect(('', port))
    

    Sto usando MacOs e Firefox 22. L’ultima versione di Firefox, al momento di questo post è di 24, ma ho sentito che ci sono alcuni problemi di sicurezza con la versione che potrebbe bloccare alcuni di selenio funzionalità (non ho verificato). A prescindere, per questo motivo, sto utilizzando la versione precedente di Firefox.

    OriginaleL’autore Layla

  9. -1

    Questo ha funzionato per me (Testato su Ubuntu 11.04 con Python 2.7):

    from selenium import webdriver
    
    driver = webdriver.Firefox()
    driver.get("http://www.stackoverflow.com")
    

    OriginaleL’autore

  10. -1

    Se la stanno usando in macchina windows, verificare se il selenio webdriver hai installato è l’ultima. Ho appena esplorati che il mio webdriver è di vecchio e che appena si apre firefox ma non poteva processo la funzione get.

    Updation di webdriver risolve questo problema

    OriginaleL’autore Charlie Pradeep

  11. -2

    Provare il codice riportato di seguito

    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    
    WebDriver DRIVER = new FirefoxDriver();
    DRIVER.get("http://www.google.com");
    
    Questo non è il codice Python.

    OriginaleL’autore A. Luiten

  12. -5

    Devi prima dichiarare url come un pungiglione come di seguito:

    from selenium import webdriver
    from selenium.common.exceptions import TimeoutException
    from selenium.webdriver.support.ui import WebDriverWait # available since 2.4.0
    import time
    
    
    # Create a new instance of the Firefox driver
    
    String URL = "http://www.google.com";
    
    driver = webdriver.Firefox()
    
    
    # go to the google home page
    driver.get(URL);
    
    Non è un grande affare. Inoltre, non aiuta, almeno nel caso. -1 per

    OriginaleL’autore Curious

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *