好玩的github專案-可快速拉取各種網站的妹子圖coll-mz

wwdyy發表於2016-12-09

轉自github使用者:fotomxq

collmz

介紹

COLL-MZ專案主要用於採集煎蛋、飛G、妹子圖、Xiuren網站,以及本地類似圖片、視訊等檔案,並展示到瀏覽器中。

特別申明

該專案主要是個人學習golang而開發的第一個試水程式,請勿將該專案用於非法用途。

特點

專為悶騷程式設計師提供; 採集各大妹子圖片資料; 手動採集、定時採集(2小時進行一次); 在瀏覽器快速瀏覽相關採集資料; 可整理本地檔案、視訊、漫畫、文字等資料; sqlite3開放式資料庫,可自行構建訪問,方便二次開發; 可根據具體需求,構建其他網站的採集程式; 純Golang實現。

使用方法

1、下載專案到本地任意檔案;

2、執行collmz-server-..exe檔案;

3、通過瀏覽器訪問http://localhost:8888可以看到專案,可在./config/config.json檔案內自行修改埠。

4、初始使用者名稱:admin@admin.com,密碼:adminadmin

程式碼編譯環境搭建步驟

1、安裝golang語言執行環境,配置好環境變數;

2、安裝gcc編譯環境,並配置好環境變數,推薦使用mingw,下載地址:https://sourceforge.net/projects/mingw-w64/

3、安裝golang第三方庫:

  • goquery

github.com/PuerkitoBio/goquery

  • sqlite3

github.com/mattn/go-sqlite3

  • session

github.com/gorilla/sessions

4、下載該專案程式碼,到golang工作目錄中任意目錄,建議使用git克隆。

5、因為是在win10 x64下開發、編譯的,所以只能保證該環境下執行良好,其他環境請自行排錯。

FAQ

1、可以不部署程式碼直接使用麼?

可以,下載整個專案,之後執行exe檔案即可。專案內的controller資料夾可自行刪除。

2、編譯失敗是什麼情況?

常見的錯誤主要出在sqlite3上,因為該第三方庫是用C實現的,需要用到GCC編譯器,也就是mingw,所以如果安裝錯版本、沒有配置對環境變數,都會報錯。64位系統一定要使用64位的GCC編譯。

3、想在此結構上構建其他採集器怎麼做?

在controller下有coll-children-...go的檔案,這些檔案都是對應的採集器程式碼,可參考這些程式碼寫自己需要的採集專案。

可使用構建好的相關框架,首先在coll.go內註冊好採集器,這樣可直接通過瀏覽器訪問到採集器;然後自行建立go檔案寫入程式碼,這樣就可以了。

注意,如果是正在開發的專案,CollChildren.dev儘量等於true,這樣在瀏覽器端內容易區分。

CollOperate.Auto...(),這幾個方法是整合了大部分情況下采集工作,可以極大方便採集工作。

關於專案邏輯、思維導圖

4、採集速度如何?

由於sqlite3無法多開執行緒,所以一個採集器只能對應一個併發操作,如果發現重複執行、在採集過程中瀏覽資料會自動阻止。

每個採集器有各自的執行緒。

5、為什麼某些採集器不能用?

個別採集器因為國內區域網限制,需要自行解決問題。

其次極個別採集的網站存在JS動態載入功能,以及各種阻攔採集工作的功能,所以未來看個人開發能力提升後再解決。這類採集器都標記了dev狀態,你可以在採集介面中看到。

6、如何修改初始使用者名稱和密碼?

在寫這段文字的時候,我才想起來沒有做這個頁面,所以暫時請用sqlite工具開啟./content/database/coll-mz.sqlite資料庫,修改其中的user表資料即可。

=============================================================== github地址:https://github.com/fotomxq/coll-mz

相關文章