So führen Sie Webpage-Code mit PhantomJS über GhostDriver (Selen)

8

Ich suche nach Fähigkeit rendern PDF mit PhantomJS via GhostDriver , nicht nur PDF rendern. Wenn ich den nächsten Code verwende, wird die Seite normal geladen:

%Vor%

Wenn ich das nächste Skript über die Befehlszeile Ссылка verwende, wird das PDF perfekt generiert.

Nun möchte ich Skript wie rasterize.js ( page.render('file.pdf') ) aber über webdriver ausführen. webdriver hat execute_script method, aber es sieht wie PhantomJS code evaluation aus und hat keinen Zugriff auf webpage instance context. Auch webdriver hat get_screenshot_as_base64 Methode, aber es gibt nur png zurück.

Ich verwende die neuesten Versionen von selenium , phantomjs , nodejs .

Also meine Frage, wie ich Zugang zu PhantomJS -Webpage Instanz über GhostDriver bekommen und render Methode bewerten kann?

    
tbicr 17.04.2014, 05:51
quelle

1 Antwort

9

Es gibt eine spezielle Möglichkeit, PhantomJS-Skript von GhostDriver auszuführen, indem Sie den nächsten Befehl verwenden:

%Vor%

Es wurde in GhostDriver v1.1.0 aufgenommen, also sollte es seit PhantomJS v.1.9.6 .

Sehen Sie sich dieses Beispiel an:

%Vor%

Beachten Sie, dass in web Web-Seite als Bilder mit nicht auswählbarem Text dargestellt wird Rendering-Engine in OS X (zumindest mit PhantomJS v.1.9.8 und früher).

    
MTuner 01.02.2015 23:15
quelle