使用CutyCapt
1.sudo apt-get install cutycapt
#安装,适用Debian, Ubuntu 或者 Linux Mint
2.sudo apt-get install xvfb
#安装Xvfb,
3.xvfb-run --server-args="-screen 0, 1280x1200x24" cutycapt --url=http://www.cnn.com --out=/tmp/cnn.png
4.接入python:
在这里插入代码片import shlex
import subprocess
def url_screengrab(url, **kwargs):
cmd = '''xvfb-run server-args "-screen 0, 1100x800x24"
cutycapt url={u} out=D:\\tmp\\cnn.png '''.format(u = url)
proc = subprocess.Popen(shlex.split(cmd))
proc.communicate()
url = 'http://www.baidu.com'
url_screengrab(url)
CutyCapt截取本地文件
xvfb-run --server-args "-screen 0, 1100x800x24" cutycapt --url=file:///tmp/view.html --out=/tmp/view.png
设置像素
xvfb-run --server-args "-screen 0 200x150x8" cutycapt --url=file:///tmp/cnn.html --out=/tmp/cnn22.png --min-width=1600 --min-height=2250
根据我的尝试,"-screen 0 200x150x8"我理解是Xvfb的屏幕大小,但是改这个数据对结果并没有影响。图片的size由–