簡介
本來一開始用 nodejs
寫的,考慮大小、易操作、高效能、跨平臺以及環境等問題,我就想能不能搞個不需依賴開發語言環境就能執行的。所以我就選擇 go
並且它本身就具備以上優點。作者本身是java
開發,第一次使用 go
所以過程也是比較艱難,好在 GPT 在學習一門新的開發語言方面還是相當給力!💪💪💪
這是一個用於儲存公眾號文章到本地離線檢視的軟體,支援將 HTML 文章儲存至本地,並提供 HTML 轉 PDF 的功能。此外,軟體還支援圖片素材管理,可在 Windows、Mac 和 Linux 系統上執行,使用 Go 語言開發,具備輕量級、小體積、高效能和併發支援的特點。不支援批次直接獲取文章列表
功能特點
- 儲存公眾號文章至本地
- 支援將 HTML 文章轉換為 PDF 格式(需安裝 wkhtmltopdf)
- 圖片素材管理
- 儲存原始地址
- 跨平臺支援:Windows、Mac 和 Linux
- 使用 Go 語言開發,輕量級、高效能、高併發
- 提供簡單易用的 Web 介面管理
下載
作業系統 | 版本/架構 | 大小 |
---|---|---|
Windows | wxdown-1.0.0-windows-amd64.exe | 9.23MB |
ARM Linux | wxdown-1.0.0-linux-arm64 | 8.75MB |
Linux | wxdown-1.0.0-linux-amd64 | 9.04MB |
macOS | wxdown-1.0.0-darwin-amd64 | 9.09MB |
macOS(Apple Silicon) | wxdown-1.0.0-darwin-arm64 | 8.75MB |
安裝和執行
Windows
包含了 wkhtmltopdf
- 解壓縮包
- 開啟目錄
- 雙擊
wxdown-1.0.0-windows-amd64.exe
啟動 - 瀏覽器訪問 http://127.0.0.1:81
如下所示啟動成功:
cwd: E:\code\go\go-wx-download
----------------------------------------
歡迎使用 wxdown 工具!
----------------------------------------
執行模式 : binary
軟體版本 : 1.0.0
作業系統 : windows
系統架構 : amd64
啟動時間 : 2024-05-19 00:00:00
----------------------------------------
服務資訊
----------------------------------------
服務地址:
http://192.168.31.209:81 (瀏覽器訪問)
http://192.168.202.1:81 (瀏覽器訪問)
http://192.168.11.1:81 (瀏覽器訪問)
http://172.26.192.1:81 (瀏覽器訪問)
http://127.0.0.1:81 (瀏覽器訪問)
採集介面:
http://192.168.31.209:81/gather/ (GET|POST|HEAD)
http://192.168.202.1:81/gather/ (GET|POST|HEAD)
http://192.168.11.1:81/gather/ (GET|POST|HEAD)
http://172.26.192.1:81/gather/ (GET|POST|HEAD)
http://127.0.0.1:81/gather/ (GET|POST|HEAD)
----------------------------------------
配置資訊
----------------------------------------
執行路徑 : E:\code\go\go-wx-download
資源路徑 : E:\code\go\go-wx-download\data
Linux
新增許可權
chmod +x wxdown-1.0.0-linux-amd64
啟動程式
root@mac-max:/home/wx# ./wxdown-1.0.0-linux-amd64
cwd: /home/wx
----------------------------------------
歡迎使用 wxdown 工具!
----------------------------------------
執行模式 : binary
軟體版本 : 1.0.0
作業系統 : linux
系統架構 : amd64
啟動時間 : 2024-05-19 00:00:00
----------------------------------------
服務資訊
----------------------------------------
服務地址:
http://192.168.31.156:81 (瀏覽器訪問)
http://172.17.0.1:81 (瀏覽器訪問)
http://172.18.0.1:81 (瀏覽器訪問)
http://127.0.0.1:81 (瀏覽器訪問)
採集介面:
http://192.168.31.156:81/gather/ (GET|POST|HEAD)
http://172.17.0.1:81/gather/ (GET|POST|HEAD)
http://172.18.0.1:81/gather/ (GET|POST|HEAD)
http://127.0.0.1:81/gather/ (GET|POST|HEAD)
----------------------------------------
配置資訊
----------------------------------------
執行路徑 : /home/wx
資源路徑 : /home/wx/data
Mac
出現 permission denied
表示沒有許可權
(base) mac@macdeMacBook-Pro-3 ~ % /Users/mac/Desktop/wxdown-1.0.0-darwin-amd64/wxdown-1.0.0-darwin-amd64
zsh: permission denied: /Users/mac/Desktop/wxdown-1.0.0-darwin-amd64/wxdown-1.0.0-darwin-amd64
新增許可權
(base) mac@macdeMacBook-Pro-3 ~ % chmod +x /Users/mac/Desktop/wxdown-1.0.0-darwin-amd64/wxdown-1.0.0-darwin-amd64
雙擊 wxdown-1.0.0-darwin-amd64
啟動或命令啟動
(base) mac@macdeMacBook-Pro-3 ~ % /Users/mac/Desktop/wxdown-1.0.0-darwin-amd64/wxdown-1.0.0-darwin-amd64
執行結果同上
簡單使用會下載和安裝就可以了,後面都基本沒啥用了😄😄,不用再看了
目錄結構
web
:HTML 頁面,很簡單也可以自己修改index.html
主頁面images.html
圖片預覽頁面
config.yaml
:系統全域性配置檔案wxdown-1.0.0
可執行檔案,程式入口
config.yaml
# 服務埠
port: 81
# 本地資料檔案儲存路徑
path: ./data
# HTML 轉 PDF 配置
# 下載 wkhtmltopdf 路徑 https://wkhtmltopdf.org/downloads.html
# window 建議下載後將 wkhtmltopdf目錄下載所有內容複製到專案根目錄下
wkhtmltopdf:
# true 開啟 false 關閉 預設關閉
enable: false
# linux 例如:/usr/local/wkhtmltopdf/bin/
# window 例如:E:\Program Files\wkhtmltopdf\bin
path:
# 採集執行緒配置
thread:
# 同時下載 HTML 執行緒數量
html: 5
# 同時下載圖片執行緒數量
image: 10
介面
採集介面
GET
僅支援單次下載,POST
支援批次提交,請求頭型別JSON
格式- http://127.0.0.1:81/gather/+需採集地址。就可以直接把地址發給採集軟體
地址 | 請求方式 | 請求引數 | 請求體 |
---|---|---|---|
http://127.0.0.1:81/gather/ | GET | /gather/https://mp.weixin.qq.com/1 | 無 |
HEAD | /gather/https://mp.weixin.qq.com/1 | 無 | |
POST | /gather/ | ["https://mp.weixin.qq.com/1","https://mp.weixin.qq.com/2",...] |
書籤指令碼
注意⚠️:如果啟動軟體的機器和瀏覽文章的機器不是一臺機器,使用區域網 IP
(192.168.0.xxx)替換 127.0.0.1
javascript:fetch("http://127.0.0.1:81/gather/" + window.location.href,{mode:"no-cors"});
使用方法:
- 瀏覽器書籤欄➡️右鍵➡️新增網頁...➡️名稱:隨便你能記住就行➡️網址:輸入下面
js
指令碼 - 開啟瀏覽器公眾號文章
- 點選上面新增的書籤指令碼軟體會自動採集
資源介面
地址 | 請求方式 | 請求引數 | 請求體 |
---|---|---|---|
http://127.0.0.1:81/articles | GET | 無 | 無 |
開啟資料夾介面
地址 | 請求方式 | 請求引數 | 請求體 |
---|---|---|---|
http://127.0.0.1:81/open/ | GET | /open/公眾號名稱 | 無 |
使用示例
主頁面
文章列表
圖片庫
開發和貢獻
本軟體使用 Go 語言開發,歡迎開發者貢獻程式碼或提出改進建議。請在 GitHub 上提交 issue 或 pull request。
注意事項
- 請勿傳播未經授權的文章或圖片。
- 在儲存、轉換文章或管理圖片時,請注意版權和法律規定。