私人工具分享:博客下載工具


我曾經寫過一個博客下載工具:

博客園博客下載工具,可以主動搜索某人的blog,並以MHTML格式保存到本地文件夾脫機瀏覽。

 

在這篇文章里面,我寫了如何制作一個下載工具的思路,但是我沒有講我為什么要寫這樣一個下載工具:

很簡單:公司不允許上外網

 

工具的不足:

上面的那個工具有一點不足,它只能搜索博客園的某個名人的博客文章,但是有時候我想要搜索的可能是某個關鍵字,比如當我需要silverlight的資料的時候,我可能會將我知道的幾個博客中搜到的silverlight的文章全部下過來,比如msdn,codeproject,stackoverflow,博客園。。

 

解決方案:

可以自動構造搜索的字符串,然后對要下載的鏈接進行正則匹配。

如下圖所示:

image

在這里我想在博客園中下載silverlight的資料,大概是1到500頁之間的博客,搜索到的文章必須匹配到正則。

點擊生成Url就會生成如下圖的Url:

image

 

有了這些Url,自然就需要東西來下載了,

於是我寫了一個Client來將Url保存成mhtml文件,這個在我以前的文章中可以找到保存成mhtml的原理。

但是這個使用這種方案有一個我無法解決的問題,那就是保存成mhtml的時候,有時候微軟的組件會拋出異常,這個異常無法捕捉,它直接會導致程序退出,我曾經嘗試過創建應用程序域來保存mhtml,但是依然會導致整個程序退出,所以我寫了一個server來監視client,如果client退出的話,server就重啟client,

image

 

在這里選擇了包含下載路徑的download.txt,點擊開啟跟蹤就會自動下載了,client是后台運行的。

image

 

上面演示了如何從博客園下載關於silverlight的文章。

下面是msdn的:

image

image

 

下面是CodeProject的:

image

image

 

完整的源代碼如下:BlogDownLoader.rar

 

這個工具是一年前寫的,時間比較倉促,代碼命名是不推薦的,尚未進行代碼重構,希望大家對代碼本身的質量不要太過執着。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM