Добавление второго экземпляра Firefox с Marionette (изменить порт)

У меня большие трудности с созданием двух экземпляров Firefox через марионетку. Наличие одного экземпляра отлично работает:

Запуск Firefox с включенной марионеткой:

firefox.exe -marionette

Управление с помощью python:

from marionette import Marionette
client = Marionette('localhost', port=2828)
client.start_session()
client.execute_script("alert('o hai there!');")

Теперь я хочу добавить второго клиента рядом с текущим, быстрый поиск привел к команде --address:

firefox.exe -marionette --address=localhost:2829

Попытка управлять им через python:

from marionette import Marionette
client = Marionette('localhost', port=2829)
client.start_session()
client.execute_script("alert('o hai there!');")

Однако я не могу заставить это работать:

error: [Errno 10061] No connection could be made because the target machine actively refused it

Любая помощь приветствуется.


person MattV    schedule 29.05.2016    source источник
comment
Вы можете сделать telnet localhost 2829, чтобы проверить, работает ли сервер на 2829?   -  person gaganso    schedule 04.06.2016


Ответы (1)


Вы должны использовать разные профили, чтобы Firefox прослушивал разные порты.
Изменить <path-to-profile>/prefs.js добавить следующее и сохранить, если Firefox не использует этот профиль;

user_pref("marionette.defaultPrefs.port", 2829);

Теперь запустите Firefox как;

firefox -marionette --profile <path-to-profile> --new-instance&

Создать новый профиль;

$ mkdir new_profile
$ firefox --profile new_profile --new-instance

и закройте фаерфокс. Теперь у вас будет new_profile/prefs.js

person Nizam Mohamed    schedule 06.06.2016