J'ai des problèmes avec Selenium et PhantomJS sur Windows7 lorsque je souhaite obtenir le source de la page d'une URL. browser.page_source
renvoie uniquement <html><head></head></html>
. J'ai déjà dormi avant browser.page_source
mais ça n'a pas aidé.
Ceci est mon code:
from Selenium import webdriver
browser = webdriver.PhantomJS('phantomjs-1.9.7-windows\phantomjs.exe')
url = 'myurl'
browser.get(url)
print browser.page_source
Sous Linux avec la même version de PhantomJS, cela fonctionne parfaitement. En outre, cela fonctionne sur Windows Server 2003.
par défaut, les phantomjs utilisent SSLv3, mais de nombreux sites après le bogue dans ssl migrent vers tls. C'est pourquoi vous avez une page blanche. utilisez service_args=['--ignore-ssl-errors=true', '--ssl-protocol=any']
browser = webdriver.PhantomJS('phantomjs-1.9.7-windows\phantomjs.exe', service_args=['--ignore-ssl-errors=true', '--ssl-protocol=any'])
Utiliser service_args=['--ignore-ssl-errors=true']
a fait l'affaire!
browser = webdriver.PhantomJS('phantomjs-1.9.7-windows\phantomjs.exe', service_args=['--ignore-ssl-errors=true'])
driverPhantom = webdriver.PhantomJS(driverLocation, service_args=['--ignore-ssl-errors=true', '--ssl-protocol=any']) # initaling web driver for PhantomJs
Travaillé pour moi.
augmenter la taille de l'écran comme ci-dessous a fonctionné pour moi:
driver = webdriver.PhantomJS (path2phantom, service_args = ['- ignore-ssl-errors = true', '--ssl-protocol = any'])
driver.set_window_size (2000, 1500)