2016-05-10 3 views
2

Ich versuche, meine Erweiterung auf einem Remote-Computer mit Selen zu installieren. Ich habe ein paar Codeschnipsel gefunden, die das möglich machen würden, aber ich kann nicht herausfinden, wie ich es zur Arbeit bringen soll.Laden von .crx in remote chrome Selenium python

Was ich bisher versucht habe, ist dies:

desired_cap = {'browser': 'Chrome', 'browser_version': '50.0', 'os': 'Windows', 'os_version': '10', 'resolution': '1366x768'} 

def officialv1(): 
    url= 'loginurl' 
     chop = webdriver.ChromeOptions() 
     chop.add_extension('./Shoppingbuddy_v5.4.2.crx') 
     driver = webdriver.Remote(command_executor=url, desired_capabilities=desired_cap, chrome_options=chop) 

Mit chrome_options=chop deplatziert, denn ich weiß nicht, wie man diesen Befehl an den Remote-Browser beiseite schieben mit den command_executor und den desired_capabilities Argumenten.

Ich bin dran mit meiner remote chrome sagen, um die Erweiterung mit der lokalen Datei zu installieren. Wie kann ich meinem Remote- und Aktiv-Chrome mitteilen, eine Erweiterung zu installieren, die sich in meinem lokalen Skriptordner befindet.

Ich habe this question gefunden, die meine Frage teilweise beantwortet, aber es sagt mir nicht, wie man es aus der Ferne macht.

Antwort

2

Hier ist ein Beispiel eine Erweiterung mit Chrome mit einem Remote-Server hinzuzufügen:

from selenium import webdriver 

options = webdriver.ChromeOptions() 
options.add_extension(r'C:\Downloads\Adblock-Plus_v1.11.crx') 

capabilities = options.to_capabilities() 
capabilities.update({'browser_version': '50.0', 'os': 'Windows', 'os_version': '10', 'resolution': '1366x768'}) 

driver = webdriver.Remote("http://127.0.0.1:4444/wd/hub", desired_capabilities=capabilities) 
driver.get('http://stackoverflow.com/') 

Beachten Sie, dass es vorzuziehen ist, die Log level zu WARNING, um den Server vom Schreiben des binären Inhalts der Erweiterung zu stoppen in das Protokoll und Konsole:

java -Dselenium.LOGGER.level=WARNING -jar selenium-server-standalone-2.53.0.jar 
+0

Vielen Dank! das hat es funktioniert :) –

Verwandte Themen