Compare commits

..

11 Commits

Author SHA1 Message Date
copilot-swe-agent[bot]
a45a64380c 优化乐云(LE)正则以支持 /mshare/ 格式,补充测试用例
Agent-Logs-Url: https://github.com/qaiu/netdisk-fast-download/sessions/7341ab49-5648-498c-b153-0fcd3b3f8aad

Co-authored-by: qaiu <29825328+qaiu@users.noreply.github.com>
2026-04-12 11:40:55 +00:00
copilot-swe-agent[bot]
df7442c3dd Initial plan 2026-04-12 11:39:26 +00:00
qaiu
1a949725f3 更新 README.md 2026-04-12 19:33:44 +08:00
qaiu
7c14f3437b 更新 README.md 2026-04-12 19:32:20 +08:00
qaiu
bc402da365 更新 README.md 2026-04-12 19:30:47 +08:00
qaiu
b95b474660 更新 README.md 2026-04-12 19:29:10 +08:00
qaiu
691a3770d9 更新 README.md 2026-04-12 19:28:06 +08:00
qaiu
2fc15f437e 更新 README.md 2026-04-12 19:18:15 +08:00
qaiu
190f6ca7ab 更新 README.md 2026-04-12 19:17:44 +08:00
qaiu
c683fd27d4 更新 README.md 2026-04-12 19:17:18 +08:00
qaiu
a420bad305 Update README.md 2026-04-09 16:46:29 +08:00
3 changed files with 31 additions and 12 deletions

View File

@@ -24,7 +24,13 @@
# netdisk-fast-download 网盘分享链接云解析服务 # netdisk-fast-download 网盘分享链接云解析服务
QQ交流群1017480890 QQ交流群1017480890
netdisk-fast-download网盘直链解析(nfd云解析)能把网盘分享下载链接转为直链,支持多款云盘,已支持蓝奏云/蓝奏云优享/奶牛快传/移动云云空间/小飞机盘/亿方云/123云盘/Cloudreve等支持加密分享以及部分网盘文件夹分享。 > netdisk-fast-download网盘直链解析可以把云盘分享链接转为直链,可广泛应用于各类下载站资源站个人博客图床APP下载更新视频点播等领域。支持市面各大主流云盘的文件分享以及文件夹分享链接,已支持蓝奏云/蓝奏云优享/奶牛快传/移动云云空间/小飞机盘/亿方云/123云盘/Cloudreve等支持加密分享以及部分网盘文件夹分享。
[官方文档](https://nfd-parser.github.io/)
[API接入](https://nfdparser.apifox.cn/)
[公益解析lz站](https://lz.qaiu.top)
[公益解析lz0m站](https://lz0.qaiu.top)
[专业版189站注册体验](https://189.qaiu.top)
## 快速开始 ## 快速开始
命令行下载分享文件: 命令行下载分享文件:
@@ -50,15 +56,10 @@ https://nfd-parser.github.io/nfd-preview/preview.html?src=https%3A%2F%2Flz.qaiu.
**Playground功能** [JS解析器演练场密码保护说明](web-service/doc/PLAYGROUND_PASSWORD_PROTECTION.md) **Playground功能** [JS解析器演练场密码保护说明](web-service/doc/PLAYGROUND_PASSWORD_PROTECTION.md)
## 体验地址
[公益解析1](https://lz.qaiu.top)
[公益解析2](https://lz0.qaiu.top)
[大文件解析专属版,限时开放,注册体验](https://189.qaiu.top)
main分支依赖JDK17, 提供了JDK11分支[main-jdk11](https://github.com/qaiu/netdisk-fast-download/tree/main-jdk11) **注意⚠小飞机解析有IP限制多数云服务商的大陆IP会被拦截可以自行配置代理和本程序无关**
**0.1.8及以上版本json接口格式有调整 参考json返回数据格式示例** **注意⚠️收到很多用户反馈,小飞机近期封号频繁,请尽可能选择其他网盘分享**
**小飞机解析有IP限制多数云服务商的大陆IP会被拦截可以自行配置代理和本程序无关** **注意⚠️请不要过度依赖 lz.qaiu.top建议本地搭建或者云服务器自行搭建。请求量过多的话服务器可能会被云盘厂商限制遇到解析失败的分享链接不要着急提issues请先检查分享是否有效** [lz站](https://lz.qaiu.top) 和 [lz0](https://lz0.qaiu.top) 不支持大文件,请使用 [189站](https://189.qaiu.top) 注册体验。
**注意: 请不要过度依赖lz.qaiu.top预览地址服务建议本地搭建或者云服务器自行搭建。解析次数过多IP会被部分网盘厂商限制不推荐做公共解析。**
## 网盘支持情况: ## 网盘支持情况:
> 20230905 奶牛云直链做了防盗链需加入请求头Referer: https://cowtransfer.com/ > 20230905 奶牛云直链做了防盗链需加入请求头Referer: https://cowtransfer.com/
@@ -69,7 +70,6 @@ main分支依赖JDK17, 提供了JDK11分支[main-jdk11](https://github.com/qaiu/
- [蓝奏云-lz](https://pc.woozooo.com/) - [蓝奏云-lz](https://pc.woozooo.com/)
- [蓝奏云优享-iz](https://www.ilanzou.com/) - [蓝奏云优享-iz](https://www.ilanzou.com/)
- [奶牛快传-cow](https://cowtransfer.com/)
- [移动云云空间-ec](https://www.ecpan.cn/web) - [移动云云空间-ec](https://www.ecpan.cn/web)
- [小飞机网盘-fj](https://www.feijipan.com/) - [小飞机网盘-fj](https://www.feijipan.com/)
- [亿方云-fc](https://www.fangcloud.com/) - [亿方云-fc](https://www.fangcloud.com/)

View File

@@ -113,9 +113,9 @@ public enum PanDomainTemplate {
"https://www.feijix.com/s/{shareKey}", "https://www.feijix.com/s/{shareKey}",
FjTool.class), FjTool.class),
// https://lecloud.lenovo.com/share/ // https://lecloud.lenovo.com/share/ https://lecloud.lenovo.com/mshare/
LE("联想乐云", LE("联想乐云",
compile("https://lecloud?\\.lenovo\\.com/share/(?<KEY>.+)"), compile("https://lecloud?\\.lenovo\\.com/m?share/(?<KEY>.+)"),
"https://lecloud.lenovo.com/share/{shareKey}", "https://lecloud.lenovo.com/share/{shareKey}",
LeTool.class), LeTool.class),

View File

@@ -129,6 +129,25 @@ public class PanDomainTemplateTest {
wsPattern.matcher("https://www.evil.com/f/abc123").matches()); wsPattern.matcher("https://www.evil.com/f/abc123").matches());
} }
@Test
public void testLePatternMatching() {
Pattern lePattern = PanDomainTemplate.LE.getPattern();
// /share/ 格式
Matcher m1 = lePattern.matcher("https://lecloud.lenovo.com/share/abc123");
assertTrue("LE pattern should match /share/ format", m1.matches());
assertEquals("abc123", m1.group("KEY"));
// /mshare/ 格式
Matcher m2 = lePattern.matcher("https://lecloud.lenovo.com/mshare/xyz789");
assertTrue("LE pattern should match /mshare/ format", m2.matches());
assertEquals("xyz789", m2.group("KEY"));
// 负例:错误路径不匹配
assertFalse("Wrong path should not match",
lePattern.matcher("https://lecloud.lenovo.com/s/abc123").matches());
}
@Test @Test
public void verifyDuplicates() { public void verifyDuplicates() {