我正在使用selenium / phantomjs在python中创建html的png文件。有没有办法从html字符串或文件句柄(而不是网站)生成png?我已经搜索了selenium文档,并用谷歌搜索,但是找不到答案。我有:
htmlString = '<html><body><div style="background-color:red;height:500px;width:500px;">This is a png</div></body></html>' myFile = 'tmp.html' f = open(myFile,'w') f.write(htmlString) from selenium import webdriver driver = webdriver.PhantomJS() driver.set_window_size(1024, 768) #driver.get('https://google.com/') # this works fine driver.get(myFile) # passing the file name or htmlString doesn't work...creates a blank png with nothing driver.save_screenshot('screen.png') driver.quit() print "png file created"
幻影
var page = require('webpage').create(); page.open('http://github.com/', function () { page.render('github.png'); phantom.exit(); });
这是在phantomJS中获取屏幕截图的方法,我已经使用phantomJS一段时间了。
您可以在此处找到更多信息。
硒
driver = webdriver.Chrome(); driver.get('http://www.google.com'); driver.save_screenshot('out.png'); driver.quit();
希望这可以帮助。