切換
舊版
前往
大廳
主題

【C#、net】公開原始碼,哈哈姆特-圖片整理工具

深海異音 | 2018-02-09 04:48:10 | 巴幣 2558 | 人氣 2172


先前我發了一篇 【自製網頁】整理聊天室裡面的所有圖片
可以把哈哈姆特聊天室的圖片自動整理成方便瀏覽的網頁

不過我放在研究室當伺服器的電腦壞了
所以決定直接把程式的原始碼公佈,有需要的人可以在自己的電腦運行



名稱:哈哈姆特-圖片整理工具
運行環境:win7以上、net 4.5以上
開發工具:visual studio
專案類型:C# windowsForms

原始碼(github):https://github.com/hbl917070/haha_img_collect



簡易介紹:

開啟程式後,會自動整理哈哈姆特聊天室裡面的圖片
並且把它變成一個網頁
















原理:

這應該也稱不上是爬蟲,因為我並沒有去逐一訪問巴哈的各個網址
我只是開一個瀏覽器,然後每30秒記錄一次瀏覽器裡面的圖片網址,絕對不會造成巴哈流量的浪費

開啟程式後,每30秒自動把哈哈姆特聊天室裡面的所有圖片記錄起來
並產生靜態網頁的html檔案,可以直接用瀏覽器開啟

  • 每次抓完圖片後都會清空網頁,避免網頁太多內容浪費記憶體
  • 程式每10分鐘會自動回收一次記憶體
  • 瀏覽器核心是火狐,所以專案才會70M這麼大
  • 我是用txt記事本當做簡單的資料庫
  • 程式旁邊有個『黑名單.txt』,程式會略過這些人的圖片不抓
  • 要刪除圖片直接把圖片網址貼到程式右下角的『刪除圖片』文字框即可,課一次多筆,用換行斷開



順便問問看,有沒有好心人手邊的電腦可以幫忙把這個程式架設成網站
用 Apache 或 IIS 或 node js 之類的伺服器就行了
直接把整個程式複製到伺服器裡面就能發佈到網路,連資料庫都不需要設定
不過需要固定IP


送禮物贊助創作者 !
0
留言

創作回應

ays.
推~
不過開一個瀏覽器其實跟爬蟲差不多意思啦~ 都是送request
2018-02-09 10:13:55
深海異音
我是以使用者的身份用正常管道訪問,而且頁面從頭到尾都沒有重新整理,應該還是不一樣的吧
2018-02-09 12:59:25
暗月
架在Windows上執行的程式不是很方便,大部分服務都是以*nix系的為主
2018-02-09 10:27:36
深海異音
我覺得那不是問題,net是可以在Linux環境運行的,比較大的問題是gui界面對伺服器來說是不必要的成本
2018-02-09 13:02:56
暗月
可以考慮弄個cli模式,可能在啟動時加入一些參數可以把form停用,然後全部都使用參數去操作
2018-02-09 13:10:45
深海異音
幾個小時隨便寫一寫的東西而已,用那種方式不知道要幾天...
2018-02-09 13:18:21
ays.
其實差不多XD 因為其實爬蟲跟一般瀏覽都一樣是送request,客戶端拿到回傳內容後,如果客戶端是瀏覽器,可能就解析js, img 等等顯示出來;如果是爬蟲就是看你想幹嘛XD
兩個的差別基本上就是多久request一次~ 人最快頂多一秒兩三次,爬蟲可以很暴力的一秒幾十次,所以才會盡量避免用爬蟲 (應該說有禮貌的使用)

所以如果是像樓上那位的需求的話,可以把拿網頁這件事情分開,
變成說用爬蟲的方式拿到網頁做處理,要用GUI的話再用GeckoWebBrowser來處理&呈現出來,這樣的話專案容量應該會小一點(追求專案容量的話就用內建的字串處理or regex parse DOM應該可行)

不過以上是沒有GUI的需求的話,所以我覺得根本沒差XD 我覺得你很猛了,想當年我年輕時廢廢der 都不會寫這麼多造福大家的工具...
2018-02-09 16:06:07
深海異音
其實也不用這麼麻煩,直接攔截哈哈姆特的WebSocket就行了,不過感覺就像是故意去破解巴哈的系統,感覺比較不是那麼好(觀感上)
不過如果處理的妥當的話,用這樣的方式反而是更節省巴哈的流量,因為只單純撈json的純文字,用瀏覽器會有自動下載圖片變成暫存的問題
2018-02-09 17:01:59
深海異音
話說哈哈姆特也挺厲害的,連IE11都沒辦法瀏覽,所以我才會嵌入火狐核心[e8]
2018-02-09 17:03:36
ays.
XD 我以前也覺得這樣不好,後來心態就轉變了XD (如果對方沒有刻意防,那就代表沒關係 我會這樣想XD)
不過用這樣好像還要額外處理cookie的問題(我不確定有沒有這問題) 感覺還不如直接用瀏覽器 還有圖片暫存機制XD
2018-02-09 17:47:26
深海異音
變成要模擬瀏覽器去請求資料,處理上有一定難度。
有一些伺服器防的很仔細,我加了很多偽造成伺服器的處理,依然沒辦法訪問,不知道是什麼巫術[e8]
2018-02-12 23:56:26

更多創作