Sia Chrome
e PhantomJS
driver di selenio possono accedere tutto quello che succede sul lato browser. Specificando il percorso del registro di servizio durante l'inizializzazione del driver, è possibile controllare dove verranno scritti i registri. Per esempio. per Chrome (in Python):log WebDriver per Firefox
from selenium import webdriver
driver = webdriver.Chrome(service_log_path="/tmp/log")
driver.get("http://www.google.com")
driver.close()
Dopo l'esecuzione del codice, /tmp/log
file potrebbe contenere i registri di servizio che è utile per il debug:
[0.985][INFO]: Launching chrome: ...
[2.620][INFO]: RESPONSE InitSession {
"acceptSslCerts": true,
"applicationCacheEnabled": false,
"browserConnectionEnabled": false,
"browserName": "chrome",
"chrome": {
"userDataDir": "/var/folders/yy/ppdg927x4zv8b0rbzg1f_jzh0000gn/T/.org.chromium.Chromium.ibsof9"
},
"cssSelectorsEnabled": true,
"databaseEnabled": false,
"handlesAlerts": true,
"javascriptEnabled": true,
"locationContextEnabled": true,
"nativeEvents": true,
"platform": "Mac OS X",
"rotatable": false,
"takesHeapSnapshot": true,
"takesScreenshot": true,
"version": "37.0.2062.120",
"webStorageEnabled": true
}
[2.677][INFO]: Waiting for pending navigations...
[2.696][INFO]: Done waiting for pending navigations
[3.290][INFO]: Waiting for pending navigations...
[4.338][INFO]: Done waiting for pending navigations
[4.338][INFO]: RESPONSE Navigate
[4.339][INFO]: COMMAND CloseWindow {
}
[4.451][INFO]: RESPONSE CloseWindow
C'è un modo per ottenere le stesse informazioni ma utilizzando Firefox
driver Web?
Da quello che vedo nel codice sorgente, sia Chrome
e PhantomJS
al fuoco fino new services via subprocess
e passare l'argomento --log-path
ad esso. E questi servizi sono responsabili della registrazione. Per quanto riguarda Firefox
driver, l'implementazione è molto diversa e si basa sulla classe FirefoxBinary
.
esempio fornito e collegamenti sono Python-correlati, ma la domanda è più o meno generica e indipendente dal linguaggio. Gradirei qualsiasi suggerimento.
Il file di log non è dettagliato come i servizi di uno Chrome e PhantomJS forniscono, ma questo è bene sapere e avrebbe aiutato con il debug. Grazie mille! – alecxe
Ragazzi, sapete per caso quello per i "registri del browser" per Chrome? ad esempio webdriver.firefox.logfile ma per Chrome. –