Я пытаюсь автоматизировать процесс входа в мое веб-приложение с помощью клиентской библиотеки Selenium-Python. Конечная цель - изучить клиентскую библиотеку Python Selenium. Итак, я был бы очень признателен за ответы от тех, кто знаком с Selenium-Python.
У меня сейчас есть такой код:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
browser = webdriver.Firefox() # Get local session of firefox
browser.get("http://myServer/WebAccess/login.html") # Load Application page
elem = browser.find_element_by_name("LoginID") # Find the Login box
elem.send_keys("Administrator")
elem = browser.find_element_by_name("Password") # Find the Password box
elem.send_keys("Administrator" + Keys.RETURN)
Это хорошо работает, но все происходит в интерфейсе. Я имею в виду, что он буквально открывает Firefox, вводит значения, нажимает «Отправить» и т. Д., Как и ожидалось.
Мне просто интересно, могу ли я что-нибудь сделать, чтобы все это происходило на заднем плане? Скажем, я не хочу следить за тем, что делает сценарий. Я просто хочу, чтобы он работал в фоновом режиме. Есть ли способ добиться этого?
РЕДАКТИРОВАТЬ
Скачал PyVirtualDisplay и установил его в своих окнах с помощью команды setup.py install
. Установлен также модуль EasyProcess и Path.
Теперь у меня есть пример кода вроде этого
from pyvirtualdisplay import Display
from selenium import webdriver
display = Display(visible=0, size=(1024, 768))
display.start()
browser = webdriver.Firefox()
browser.get('http://www.google.com')
print browser.title
browser.close()
display.stop()
Я получаю следующие ошибки при выполнении этого кода:
`Traceback (most recent call last):
File "C:\Documents and Settings\user\Desktop\Sel.py", line 1, in <module>
from pyvirtualdisplay import Display
File "C:\Python27\lib\site-packages\pyvirtualdisplay\__init__.py", line 1, in <module>
from display import Display
File "C:\Python27\lib\site-packages\pyvirtualdisplay\display.py", line 2, in <module>
from pyvirtualdisplay.xephyr import XephyrDisplay
File "C:\Python27\lib\site-packages\pyvirtualdisplay\xephyr.py", line 8, in <module>
EasyProcess([PROGRAM, '-help'], url=URL, ubuntu_package=PACKAGE).check_installed()
File "C:\Python27\lib\site-packages\easyprocess\__init__.py", line 202, in check_installed
raise EasyProcessCheckInstalledError(self)
EasyProcessCheckInstalledError: cmd=['Xephyr', '-help']
OSError=[Error 2] The system cannot find the file specified
Program install error! `