整體思路:
1、抓取出目錄中各章節的名稱及url
2、遍歷章節url,獲取具體內容
3、將章節url進行分包,交給多執行緒處理
4、將處理完的內容重新整理,按章節名稱排序
5、將內容寫入txt檔案
首先抓取導航頁面的內容,通過webrequest物件獲取網頁內容
//////通過鏈結位址獲取html內容
//////
///private
static
string gethtml(string
url)
catch
return
html;
}
通過正則獲取章節位址及名稱
//////獲取所有鏈結位址
//////
private
static dictionary getallurl(string
html)
title = string.format("
第節", mtitle.groups["
按執行緒數對位址進行分包處理
//////按執行緒數對url進行分包處理
//////
///private
static dictionary> spliturl(dictionarydicturls)
if (!dictret.containskey(keyindex))
dictret[keyindex].add(keyurl, dicturls[keyurl]);
calcount++;
}return
dictret;
}
開啟執行緒,獲取內容,存入字典
staticvoid main(string
args)
;
newthread(ts).start();
}}///
///執行內容解析
//////
private
static
void run(dictionary dicturls, int
threadid)
console.writeline(
"thread ,deal with :...
", threadid, dicturls[keyurl], keyurl);
string content =gethtml(keyurl);
if (content.length > 0
)
if (content.length > 0
) _.txt
", systemname, dicturls[keyurl]));
console.writeline(
"success");
}else
lock
(lockobj)
}if (dealedcount ==totalcount)
}
最後將所有內容重新整理,輸出到文字
//////輸出到文字檔案
///private
static
void
writetotxt()
", item.key);"
", item.key, item.value);
}write(sbcontent.tostring(),
string.format("
.txt
", systemname));
console.writeline(
"生成txt成功");
}
demo
網頁抓取小工具(IE法)
用ie提取網頁資料的好處在於 所見即所得,網頁上能看到的資訊一般都能獲取。本工具功能不多,主要是便於提取網頁上展示的資訊所在元素的 希望能對大家有點小幫助。網頁抓取小工具.rar 6 在新生成的excel裡,點選 執行 按鈕,看是否能生成所需資料。如果生成的資料和開始分析的資料不符,原因可能是 1 ...
分享五一期間做的網頁UI抓取小工具
應武漢 安娜與國王 的要求,五一期間幫他做個網頁ui抓取的小工具,參考了douglas m.weems提供的部分 實現了頁面ui的抓圖功能,並提供了相關抓圖的靈活配置,配置如下圖所示 程式主介面如圖 該工具主要是方便網頁ui設計師收集做工精緻漂亮的網頁ui並叢中得到啟發和靈感,當然對asp.net的...
小工具 tree工具
wangyetao linux u1604 tree l 1 bin boot cdrom dev etc home initrd.img boot initrd.img 4.4.0 116 generic initrd.img.old boot initrd.img 4.4.0 112 gener...