十月一日起,網易相冊 (Photo 163) 功能改版。因應更動,修訂下載工具第三版。此次改版內容如下列:
-
增加網易相冊新版策略之支援。
新版網易相冊將影像儲存至 blog server ,但10月1日前上傳之影像,仍然儲存於原有 image server 。兩種策略並存,因此下載工具須判斷相冊儲存策略,才能正確取得影像網址。此處修訂請見 source code 第 185-194 行。
-
變更表單輸入內容,改為輸入相冊網址 (原本是縮圖網址) 。
先前就有人向我反應輸入縮圖網址的方式相當違反使用者的操作慣例,而且網易相冊新版策略也無法以縮圖網址取得下載資訊,故此處改為輸入相冊網址。請參見 source code 第 155 行。另增加失敗重試參數,就我個人測試結果,下載錯誤的發生機率極低,所以重試次數設定三次,間隔 10 秒即可。
-
修正紀錄 (log) 方式。
第二版的紀錄方式,會漏掉下載失敗的紀錄,因此會發生下載的影像有缺少卻記錄 OK 。現在修正為記錄兩段訊息, [getting] 表示開始下載, [ok] 表示下載成功。 Source code 第 31-50 行。
-
移除 Yahoo UI Library 的 code 。
第三版起不再需要安裝 Yahoo UI Library ,一方面簡化軟體需求,另一方面則是因為 Yahoo UI Library 的 AsyncReuqest 功能有些效率上的折損。替代的 AsyncRequest (XmlHttpRequest applying function) 見 source code 第 214-265 行。 Yahoo YU Library 並不使用 event notice 策略,而是使用 timer 輪詢。這種策略的效能表現並不好,類似用 while 輪詢,請參考「該不該用 while 檢查 readyState」。有時當我在 FireFox 上運行第二版下載工具下載大量影像並設定同時工作數大於 10 時, FireFox 會出現嚴重的行程鎖死現象,無法開啟其他瀏覽視窗與分頁,甚至無法啟動新的 FireFox 行程。
-
不會重覆下載已儲存的影像。
第二版沒有檢查影像是否已經下載並儲存。因此若不小心重覆操作動作,會重新下載整個相冊。現在加上檢查功能,當影像已存在時便跳過。
photo163v3.php
請注意,第 117 行的 HTML teatarea 標籤,為了能夠張貼在 blog 上,我在 < 和 textarea, /textarea 之間加上了空格。請各位複製 source code 後,要記得把那兩處空格移除,否則不會出現輸入框。真的有人問我為什麼沒有相冊網址網入框...