更新:經過一些朋友的回覆,瞭解到,可能文章太長了,有朋友只是簡略瀏覽,因此尚未明白程序工做流程。html
簡單介紹,這個程序是給程序員用的,使用這個軟件,必須是會寫正則的朋友,或者是有朋友幫忙寫正則。
前端
這個程序不是針對某個網站或者網頁而寫的,而是一個「採集框架 」——說是框架,有點大了。
git
可是核心的一點就是,只要會寫正則,幾分鐘就能夠針對一個採集目標,編寫一個採集規則。程序員
只須要4(3)個正則,就能夠完成任務。github
------------------------------------------------正則表達式
愛學習、愛使用移動設備閱讀電子書的朋友,不能不擁有一款屬於本身的採集利器。框架
而使用此程序便可以簡單輕鬆的實現採集任務。ide
採集效果圖工具
在程序運行子目錄 Config 是程序的配置的保存目錄。學習
path.txt
[config]
Config\HtmlFormatConfig.xml
[task]
Config\task\
config 設置採集內容格式化的配置保存路徑
task 設置任務工做規則保存和加載路徑
起始網址
採集開始的網址,若是是逐頁的模式,則是第一頁的地址;
若是是列表的模式,則是第一個列表頁面的地址。
列表網址
匹配下一個列表頁面地址的正則表達式。
在逐頁模式下,不用填寫。
頁面標題
匹配頁面標題的正則表達式
頁面內容
匹配頁面內容的正則表達式
頁面連接
匹配內容頁面連接的正則表達式
在逐頁模式,採集到一個內容頁面以後,能夠匹配到下一個頁面連接。
在列表模式,採集到一個列表頁面以後,就能夠匹配到若干個頁面連接。
分頁標識
識別是否爲分頁標題的匹配正則表達式
首頁標識
第一頁的標識,好比標題【科技業的員工到底有多年輕 (1)】,那麼標識能夠是(1)
保存路徑
採集內容的保存目錄
分頁處理
是指採集的文章資料是進行了分頁的,那麼程序會根據設定的規則,判斷是不是分頁章節,若是是,則不重複添加標題。
好比
科技業的員工到底有多年輕 (1)
科技業的員工到底有多年輕 (2)
科技業的員工到底有多年輕 (3)
那麼採集過程當中,只會寫入一個標題【科技業的員工到底有多年輕】
保存爲一個文件
若是勾選,則採集到的全部內容都寫入到一個文件中
開始
開始採集並將內容保存
測試
在消息框顯示採集的效果
左邊是匹配到的字符,後邊是表示要替換成的字符。
程序運行時,會將第二行(若是有兩行)的字符拷貝一份轉換爲大寫組合在一塊兒,進行格式化。
換行標籤、空白標籤、縮進標籤
能夠輸入包含正則在內的字符進行匹配
章節標題
{0}表示採集的序號(採集一個地址則加1),{1}表示採集到的標題。
輔助功能
能夠將輸入的字符進行大小寫轉換
編寫採集規則須要有必定的正則表達式的知識,若是不瞭解閱讀這個頁面:(正則表達式30分鐘入門教程)http://deerchao.net/tutorials/regex/regex.htm
任務是以xml文件的形式保存,文件名命名格式是:任務名稱 - 網站名稱.xml
在任何一個任務狀態下,只須要修改任務名稱,或者網站名稱,再點擊保存任務,便可新建一個任務。
若是名稱同樣會提示是否覆蓋。
這裏以博客園新聞爲例
博客園新聞是一個列表式的採集任務——在一個頁面能夠匹配獲得若干個頁面地址
使用firebug或者其它前端調試工具,能夠輕鬆獲得採集特徵
好比下圖
點擊紅框【點擊查看頁面中的元素】而後在頁面的【創業公司如何評估 – 度量公司潛力的方法】位置點下。
就能夠定位到html代碼
這樣就能夠獲取到內容頁面的連接特徵
而後須要觀察這個標識是否是惟一特徵的,也就是這個特徵匹配到的都是本身指望中的內容。不然就須要增長更多的限制特徵。
將特徵編寫爲匹配的正則表達式
解決方案有3個項目組成
Forms是視窗程序
Framework是採集程序
Helper是輔助程序
|
因爲考慮到之後會增長不一樣的採集任務,所以採用MDI窗體。 Config目錄是默認配置 FrmFormatConfig是內容格式化配置窗體 FrmGatherWorker是採集工做窗體 MDIParentMain是窗體容器 |
|
Config是內容格式化配置實體類 Task是採集任務規則實體類 Worker是採集工做類 |
|
|
Worker採集工做類說明
先看看3個主要事件
定義內容處理
其它更多,請下載源碼查看
運行程序下載:http://files.cnblogs.com/yelaiju/NWebGather.rar
源碼下載:http://files.cnblogs.com/yelaiju/NWebGather-src.rar
開源地址:https://github.com/alifellod/NWebGather
不瞭解github下載源碼的方式,請看文章:http://www.cnblogs.com/yelaiju/p/3180986.html
正則詞典(手冊)http://www.cnblogs.com/yelaiju/p/3182854.html
相關推薦項目:
園友:心態要好推薦 http://blog.csdn.net/sq_zhuyi/article/details/7924776
各位朋友對採集有興趣,能夠一塊兒維護和貢獻代碼,如此你們均可以輕鬆的共享同一個採集框架。