顯示具有 IECapt 標籤的文章。 顯示所有文章
顯示具有 IECapt 標籤的文章。 顯示所有文章

2008年6月14日 星期六

IECapt -- 截取網頁畫面的工具

IECapt 是一套在 Windows 底下抓取網頁圖片的命令列(command line)工具,它可以利用 IE 來抓取網頁的畫面,並存成一般常見的圖檔格式,如:png, jpeg, bmp...等。而且 IECapt 是 Open Source 軟體。

它有一些參數如下:

  • --help Print this help page and exit
    印出參數列表
  • --url= The URL to capture (http:...|file:...|...)
    指定要抓取的網址
  • --out= The target file (.png|bmp|jpeg|emf|...)
    指定輸出圖檔的路徑及圖片格式
  • --min-width= Minimal width for the image (default: 800)
    指定欲截取網頁的最小寬度
  • --max-wait= Don't wait more than (default: 90000, inf: 0)
    最長的等待時間:指定一段時間,讓程式執行抓取網頁時不要超過這個時間
  • --delay= Wait after loading (e.g. for Flash; default: 0)
    指定一段等待期間:有些網站有 Flash 特效的,須要久一點的載入時間,才能抓取到正確的 Flash 顯示畫面
 
使用範例如下:
 
IECapt --url=http://www.example.com.tw/ --out=localfile.png --delay=500
 
但萬一抓取的網頁太長,以下圖這個網頁來講,全部長度就有兩千多 pixel,如果我只需要大概一頁或兩頁的長度,那必需還要用額外的軟體來處理自己要的長度:
 
over
 
原作者提供了 C++C# 版的原始碼,我修改了 C++ 版的原始程式,讓這支 IECapt 可以自行設定要抓取的網頁長度。執行這支程式時,您會在參數列表下發現多了一行:
 
  • --max-height=<int> Maximum height for the image (default: 0(full height))
當沒有指定 max-height 或是 max-height=0 時,是抓取整個頁面的長度。使用的方式如下:
 
IECapt --url=http://www.example.org/ --out=localfile.png --max-height=800
 
這表示要抓取的長度為 800 pixel。
 
以本站為例,抓取長度 800 pixel 的話,則大小看起來如下:
 
800
 
當然,要抓取多大多長, 一切由您自行決定。
 
請點選這個連結下載這隻程式的執行檔或原始碼:執行檔原始碼
如果您有興趣想自行修改這隻程式加入一些小功能或除錯,可由 IECapt 官網處,連結到 SourceForge 的 CVS 處下載最新版的程式。
 
參考資料:
IECapt