Tôi đang tìm kiếm khả năng hiển thị pdf với PhantomJS
qua GhostDriver
, không chỉ hiển thị pdf. Khi tôi sử dụng mã tiếp theo, sau đó trang thường nạp:Cách chạy mã trang web bằng PhantomJS qua GhostDriver (selenium)
from selenium import webdriver
driver = webdriver.PhantomJS('./node_modules/phantomjs/bin/phantomjs')
driver.set_window_size(1024, 768)
driver.get('http://stackoverflow.com')
Khi tôi sử dụng kịch bản tiếp theo thông qua dòng lệnh https://github.com/ariya/phantomjs/blob/master/examples/rasterize.js sau đó pdf được tạo ra một cách hoàn hảo.
Bây giờ tôi muốn tập lệnh thực thi như rasterize.js
(page.render('file.pdf')
) nhưng thông qua webdriver
. webdriver
có phương thức execute_script
nhưng có vẻ như PhantomJS
đánh giá mã và không có quyền truy cập vào ngữ cảnh cá thể webpage
. Ngoài ra webdriver
có phương thức get_screenshot_as_base64
, nhưng chỉ trả lại png.
Tôi sử dụng phiên bản mới nhất của selenium
, phantomjs
, nodejs
.
Vì vậy, câu hỏi của tôi làm cách nào tôi có thể truy cập vào PhantomJS
phiên bản trang web qua GhostDriver
và đánh giá phương pháp render
?
Tôi đang tìm kiếm điều này, cũng ... bất kỳ ai? – j040p3d20
Chỉ với thế hệ PDF (không phải 'GhostDriver' hoặc' WebDriver'), bạn có thể sử dụng 'ghost.py' (cần QT), tìm thấy các trình bao bọc với' pyexecjs' hoặc 'các tiến trình con'. Cũng tồn tại các gói python dưới dạng 'pdfkit' và' wkhtmltopdf' làm trình bao bọc cho 'wkhtmltopdf' - nó phải có cùng kết quả vì cũng là webkit. 'weasyprint' cũng tốt nhưng không phải webkit. – tbicr