標籤:
網站管理員希望將別人的整站資料下載到自己的網站裡或者將別人網站的一些內容儲存到自己的伺服器上。從內容中抽取相關的欄位,發布到自己的網站系統中。有時需要將網頁相關的檔案也儲存到本地,片、附件等。
圖片採集軟體能採集任何網站的各種格式圖片,實現把所有文章、新聞、文章等中間的圖片全部有有序列的分類後儲存到您的電腦上等功能,可以把任何論壇網站的所有文章的圖片採集到本地,輕鬆過濾廣告等,是網站、論壇站長和喜歡收集美圖的朋友的必備工具。
本文示範使用C# WebBrowser控制項實現自動識別下一頁,按標題分類,圖片自動下載(不重複),效果如1所示。在隨附的代碼下載中提供了完整的原始碼。
圖1
示範程式結構
建立示範程式,我在Visual Studio 2013 選擇建立C#Windows表單應用程式命名為ImgSpider,添加Controls檔案夾包含包含封裝label,textbox控制項;Core檔案夾內有字典實體Entity用到的基類;Entity檔案夾有讀取設定檔dict.xml的映射類;Helper檔案夾有DownLoadHelper用於下載圖片,HtmlParserHelper解析HTML,XmlHelper讀取XML文檔;表單檔案frmAutoBorwser是程式的操作介面。圖2 顯示了示範程式的整體結構。
程式執行表單檔案frmAutoBorwser
在表單檔案frmAutoBorwser使用到的控制項,
第一,WebBrowser控制項
WebBrowser 是一個 .NET 控制項類,在 .NET Framework 2.0 版中新增。WebBrowser 類使使用者可以在表單中導航網頁。使用 WebBrowser 控制項可以在 Windows 表單應用程式中承載網頁以及支援瀏覽器的其他文檔。例如,可以使用 WebBrowser 控制項在應用程式中提供基於 HTML 的整合使用者協助或 網頁瀏覽功能。此外,還可以使用 WebBrowser 控制項向 Windows 表單用戶端應用程式添加基於 Web 的現有控制項。
第二,Timer 控制項
通過引發 Timer 事件,Timer 控制項可以有規律地隔一段時間執行一次代碼。
第三,DataGridView 控制項
將資料繫結到 DataGridView 控制項非常簡單和直觀,在大多數情況下,只需設定 DataSource 屬性即可。
點擊採集圖片按鈕
WebBrowser.Navigate方法導航網頁到採集的起始網址。要注意WebBrowser控制項載入完成後,才可以繼續採集操作。通過Timer控制項有規律的間隔執行,WebBrowser控制項載入完後要採集的任務。
擷取當前網頁標題URL,判斷是否已經下載
處理需要下載的標題URL,WebBrowser導航到指定URL
擷取當前標題圖片URL,並且WebBorwser導航到下一張圖片URL
下載圖片,判斷是否按標題拆分,更新Access資料庫
DownLoadHelper.cs檔案的主要方法是
下載圖片
HtmlParserHelper.cs檔案的主要方法
第一,擷取當前圖片URL和下一張圖片URL
第二,擷取當前頁URL和下一頁URL
結束
本文示範使用C# WebBrowser控制項實現圖片採集軟體,自動翻頁,自動分類(收集美圖必備工具),效果如1所示。在隨附的代碼下載中提供了完整的原始碼。完整的原始碼下載連結
C#圖片採集軟體 自動翻頁 自動分類(收集美圖必備工具)