Ora sto usando il selenio per salvare una pagina web per l'immagine.è possibile eseguire il rendering di una pagina Web direttamente su un'immagine in python?
from selenium import webdriver
browser = webdriver.Firefox()
browser.get("some url")
browser.save_screenshot(img)
browser.quit()
Ma c'è un problema che ogni volta si aprirà una finestra.
Esiste un modo per eseguire il rendering di un'immagine direttamente su un'immagine?
se si usa Linux/Unix e siete coraggiosi, si può sperimentare con l'esecuzione del browser Web con [Xvfb ] (http://en.wikipedia.org/wiki/Xvfb), un server X11 che esegue il rendering delle immagini in memoria senza visualizzarle. –
Motore di rendering di Firefox Gecko può essere effettivamente utilizzato per il rendering "fuori schermo" su un buffer. Ma provare a interfacciarmi con Gecko di Python, specialmente perché hanno smesso di supportare l'incorporamento di Gecko dopo 5.0, e non ha mai completato gli esempi, è un incubo. Potresti farlo scrivendo un'app XUL/JS, eseguendo _that_ in Firefox/XULRunner, quindi eseguendo lo scripting con Python. Ma non sarà ancora divertente. – abarnert
un'altra opzione è quella di utilizzare i collegamenti del webkit Qt: http://www.linux.com/learn/docs/ldp/284676-converting-html-to-pdf-using-python-and-qt – georg