Skip to content
Mr.Fang edited this page Oct 12, 2024 · 10 revisions

Image

wxdown

微信公众号离线文章保存

简介

公众号文章离线保存

  • 文件资源:支持图片、音频、视频(不含视频号,第三方视频资源)保存

  • 操作系统: window(不支持 win7)、Mac、Linux、Docker(自行构建)

  • 文章资源:标签合集,首页合集,单个文章(不支持获取历史

  • 支持将 HTML 文章转换为 PDF 格式(需安装 wkhtmltopdf

  • 支持 HTTP 基础认证(公网部署最好开启认证模式,防止有人瞎搞)

  • 支持图片直接转 base64 (本地将不存储图片)

安装和运行

解压zip免安装版双击 wxdowncmd 执行 wxdown 启动就 ok 了。浏览器访问 http://127.0.0.1:81

主界面

home

目录结构

软件目录

├─data # 下载资源目录
├─web  # 管理端页面
├─wxdown # 可执行文件,软件启动入口
└─wkhtmltopdf.exe # html 转 pdf 程序

配置文件

# 服务端口
port: 81

# 本地数据文件存储路径
path: ./data

# 启动时在默认浏览器打开
# true 开启 false 关闭 默认:true
browser: true

# HTML 转 PDF 配置
# 下载 wkhtmltopdf 路径 https://wkhtmltopdf.org/downloads.html
# window 环境无需下载,已包含 wkhtmltopdf.exe。
# 如果你单独安装了 wkhtmltopdf 请删除根目录下 wkhtmltopdf.exe
wkhtmltopdf:
  # true 开启 false 关闭 默认关闭
  enable: true
  # linux 例如:/usr/local/wkhtmltopdf/bin/
  # window 例如:E:\Program Files\wkhtmltopdf\bin
  path:

# 采集线程配置
thread:
  # 同时下载 HTML 线程数量
  html: 10
  # 同时下载图片线程数量
  image: 20

# 图片转 base64 格式,系统不会下载图片,页面直接嵌入 base64 字符串
# true 开启 false 关闭(默认)
base64: false

# http 基础认证
auth:
  # true 开启 false 关闭 默认关闭
  enable: false
  # 用户 账号:密码
  users:

高级操作

接口信息

  • 接口地址: http://127.0.0.1:81/gather
  • 合集接口地址: http://127.0.0.1:81/collect
  • 支持方法: POST、HEAD、GET

1. POST 文章采集

  • 功能描述: 文章采集
  • 请求格式: JSON
  • 请求参数:
参数名 类型 必填 描述
folder string 文件名称
urls array 文章地址列表
  • 请求示例:
{
    "folder": "example",
    "urls": [
        "https://www.example.com/1",
        "https://www.example.com/2"
    ]
}
  • 响应格式: JSON
  • 响应参数:
参数名 类型 描述
code Int 状态码 200 成功 500 失败
success bool 成功true失败false
msg string 操作结果描述
timestamp long 时间戳
  • 响应示例:
{
    "code": 200,
    "success": true,
    "msg": "操作成功",
    "timestamp": 1728722608087
}

2. GET|HEAD 文章采集

  • 功能描述: 单个文章地址采集
  • 接口地址: http://127.0.0.1:81/gather
  • 合集接口地址: http://127.0.0.1:81/collect
  • 请求参数:
参数名 类型 必填 描述
url string 文章地址
  • 请求示例:
    • http://127.0.0.1:81/gather/https://www.example.com/1:单个文章地址采集
    • http://127.0.0.1:81/collect/https:/mp.weixin.qq.com/mp/appmsgalbum?xxxxxxxxx:合集地址采集
  • 响应格式: JSON
  • 响应示例:
{
    "code": 200,
    "success": true,
    "msg": "操作成功",
    "timestamp": 1728722608087
}

书签脚本

注意:如果启动软件的机器和浏览文章的机器不是一台机器,使用局域网 IP(192.168.0.xxx)替换 127.0.0.1

单文章脚本:

javascript:fetch("http://127.0.0.1:81/gather/" + window.location.href,{mode:"no-cors"});

合集脚本:

javascript:fetch("http://127.0.0.1:81/collect/" + window.location.href,{mode:"no-cors"});

使用方法:

  1. 浏览器书签栏➡️右键➡️添加网页...➡️名称:随便你能记住就行➡️网址:输入下面js脚本
  2. 打开浏览器公众号文章
  3. 点击上面添加的书签脚本软件会自动采集

苹果快捷指令

  • TODO

开启 HTTP 基础认证如何使用接口

headers 增加认证信息,Basic YWRtaW46MTIzNDU2YWRtaW46MTIzNDU2 等于 账号:密码 base64 之后得到的结果。

Authorization:Basic YWRtaW46MTIzNDU2

Clone this wiki locally