使用CutyCapt抓取网页的快照(也就是网页截图)

来源:赵克立 分类: 其它 标签:HTML5批处理(bat)网络爬虫发布时间:2016-12-14 21:09:04浏览:147
版权声明:
本文为博主原创文章,转载请声明原文链接...谢谢。o_0。
更新时间:
2016-12-14 22:23:15

CutyCapt-Win32-2010-04-26下载地址 http://cutycapt.sourceforge.net/

使用方法

下载好后解压到一个目录,然后按shift+鼠标右键->此处打开cmd然后执行下面命令,当前文件夹会出现抓取网站的截图

CutyCapt --url=http://www.www.zhaokeli.com/ --out=localfile.png

blob.png

在php中的使用方法

注意cutycapt.exe这个文件和php文件放同一个目录中

$url      = 'http://www.zhaokeli.com';
$filename = date('ymdhis') . '.png';
$out      = __DIR__ . '/' . $filename;
$width    = 1200;
$path     = __DIR__ . '/CutyCapt.exe';
$cmd      = "$path --url=$url --out=$out --min-width=$width ";
system($cmd);
echo "<img src='./{$filename}'>";


python使用方法

注意将下面代码保存到cutycapt.exe所在目录,保存为jietu.py路径中不要出现中文

import subprocess,os
globalStartupInfo = subprocess.STARTUPINFO()
globalStartupInfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
curpath= os.getcwd().replace('\\','/')
# cmd= 'cutycapt.exe --url=http://www.zhaokeli.com --out=./1.png'
cmd=[
curpath+'/cutycapt.exe',
'--url=http://www.zhaokeli.com',
'--out='+curpath+'/1.png'
]
# print(cmd)
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=os.getcwd(), shell=False, startupinfo=globalStartupInfo)
p.wait()
print(p.stdout.read().decode())

使用参数

打开命令行输入下载命令查看可以传入的参数

CutyCapy -help


 

--help                         显示帮助

--url=<url>                    要抓取的页面url

--out=<path>                   输出的图片目标路径支持格式为: (.png|pdf|ps|svg|jpeg|...)

--out-format=<f>               Like extension in --out, overrides heuristic

--min-width=<int>              图片最小宽度 (默认: 800)

--min-height=<int>             图片最小高度 (默认: 600)

--max-wait=<ms>                超时时间 (默认: 90000, inf: 0)

--delay=<ms>                   After successful load, wait (default: 0)

--user-style-path=<path>       用户样式表文件的位置

--user-style-string=<css>      指定为文本的用户样式规则

--header=<name>:<value>        请求头;可重复性;一些不能被设置

--method=<get|post|put>        指定请求的方式 (默认: get)

--body-string=<string>         Unencoded request body (default: none)

--body-base64=<base64>         Base64-encoded request body (default: none)

--app-name=<name>              appName used in User-Agent; default is none

--app-version=<version>        appVers used in User-Agent; default is none

--user-agent=<string>          Override the User-Agent header Qt would set

--javascript=<on|off>          是否开启执行页面的js (default: on)

--java=<on|off>                Java execution (default: unknown)

--plugins=<on|off>             Plugin execution (default: unknown)

--private-browsing=<on|off>    Private browsing (default: unknown)

--auto-load-images=<on|off>    自动加载图片 (默认: on)

--js-can-open-windows=<on|off> Script can open windows? (default: unknown)

--js-can-access-clipboard=<on|off> Script clipboard privs (default: unknown)

--print-backgrounds=<on|off>   Backgrounds in PDF/PS output (default: off)

--zoom-factor=<float>          Page zoom factor (default: no zooming)

--zoom-text-only=<on|off>      Whether to zoom only the text (default: off)

--http-proxy=<url>             Address for HTTP proxy server (default: none)

-----------------------------------------------------------------------------

<f> is svg,ps,pdf,itext,html,rtree,png,jpeg,mng,tiff,gif,bmp,ppm,xbm,xpm



微信号:kelicom QQ交流群:215861553
点击更换验证码
留言