欢迎下载测试版,尝试新功能。请大家多提反馈意见,感谢各位支持~
v2.16 Beta4 [20250711]
界面改进:新增高级设置项:bittorrent.enable_sequential_download_mode_for_new_task
界面改进:高级设置项 system.config_autosave_interval_min 设为0时禁用自动保存功能
WebUI:某些情况下左边栏显示区域高度有误
核心修复:完善HTTP下载任务对服务器断点续传能力的检测
核心修复:安卓版远程连接和WebUI远程连接对任务列表的筛选会互相影响
https://download.bitcomet.com/beta/BitCometBeta_20250711_setup.exe
https://download.bitcomet.com/beta/BitCometBeta_20250711.zip
v2.16 Beta3 [20250710]
界面改进:BT任务属性对话框在显示单文件种子时,增加选项:为单文件种子创建子目录
界面改进:选项窗口BT页面增加选项:添加BT任务时为单文件种子创建子目录
界面改进:更新peer列表里的国家/地区旗帜
界面修复:Linux桌面版窗口全屏时退出,下次启动时左侧边栏宽度有误
v2.16 Beta2 [20250704]
界面改进:选项窗口trackerlist分成手动和订阅两个输入框
界面改进:添加高级设置项 system.config_autosave_interval_min
界面改进:高级设置项 network.max_connecting_connections 上限调整为 60000
界面修复:全局统计未显示DHT禁用的情况
核心修复:种子存档、我的共享列表里的元数据已获取信息有误
核心修复:统计页面里的累计上传、下载量有误
核心改进:升级sqlite版本
核心改进:调整HTTP下载任务的TCP连接优先级
核心改进:处理种子市场加载数据库时内存分配失败的情况
核心改进:增强远程连接云连接的稳定性
v2.16 Beta1 [20250625]
界面改进:左边栏增加任务类型过滤器
界面改进:文件列表增加ED2K hash信息列
界面改进:文件列表右键菜单可复制选中文件的ED2K链接
界面改进:无需开启专家模式,始终显示全局日志
界面修复:全局统计cpu占用率有时候显示为"-"
WebUI:左边栏增加任务类型过滤器
核心改进:WebUI连接使用Keep-Alive
核心改进:完善 HTTP 转跳处理
核心改进:升级boost版本
核心修复:客户端过滤器手动规则列表里的默认规则动作为允许时,订阅列表中的规则会被跳过
1個讚
不起效果,依旧是1.0
哦,看到了,你只改了/api/和/api_v2/两个目录改了个回应头connection keep-alive
虽然是1.0,但是确实成功起效果了,节省了大量的tcp握手请求
2.15
2.16beta1
/webui/这个目录其实也可以加上,毕竟不是旧版webgui那样单个页面,还有js和css等内容
303 307状态码测试正常,308还没遇到过,还没法测
顯示Content not available in your region. 无法下载… 官网地址某地区无法直接下载…
另外彗星论坛网站好像有问题, 提示: 429 Too Many Requests
BITCOMETBETA2.16 後備磁力下載: magnet:?xt=urn:btih:M56ICZYPH6B2MV7IXBYIE2EPE5UTVESB
可以在请求头中指定 不过目前彗星WEBUI中好像没有指定
可能是靠浏览器处理
现在HTTP下载的体验会好很多
不过浏览器集成和彗星本体的协作似乎在有些情况下会存在问题 还需要再测试一下
还有2.15官网好像还没发?
指的是web访问端超时,如果使用反代来给webui套一层,那么用户访问是
用户→反代→彗星
这种时候如果反代的长连接>源站时长,那么就容易引发504之类错误,架设反代60秒,源站为30秒就会触发
知道下源站的超时时长,可以设置相同的时长或者更小的值来避免504这种情况,或者反代设置始终用短连接回源也可以解决
虽然也可以自己抓包测试一下超时时长是多少
目前2.16不能正常下载蓝奏云的链接
自动捕获不起作用 强制使用右键弹出菜单下载后
会得到一个HTML文件 其似乎是一个中间页包括加载动画和安全验证
似乎要依靠中间页上js脚本进行跳转?
示例下载链接:
https://wwkt.lanzoul.com/isv0e23r7whe
下载到的HTML文件
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" />
<script type="text/javascript" src="https://assets.woozooo.com/assets/includes/js/jquery.js"></script>
</head>
<body>
<style>
body{font-size: 16px;margin: 0;font-family: \5FAE\8F6F\96C5\9ED1;color: #333;background: #fff; border-color:transparent;-webkit-appearance: none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:rgba(0,0,0,0.0);}
a{text-decoration: inherit;color: #999;}
.box{width:260px;margin:auto; text-align: center;}
.box1{ margin-top: 35%;}
.box3{ margin-top: 50px;}
.box2_2{ padding: 25px;}
.submit{ width: 90%;
margin: auto;
height: 42px;
line-height: 42px;
border: 1px solid #d5d5d5;
cursor: pointer;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);border-radius: 2px; color: #777;}
.submit:hover{ opacity: .7;}
.box2_1{ width: 60px;
height: 60px;
font-size: 30px;
line-height: 60px;
border-radius: 50%;
background: #09f;
color: #fff;
margin: auto;}
#ok{background: #d4ffa3;
width: 60px;
height: 50px;
border-radius: 50%;
margin: auto;
padding-top: 10px; display: none;}
.ok{ height: 20px;display: none;
width: 30px;
border-left: 2px solid #84c33c;
border-bottom: 2px solid #84c33c;
transform: rotate(-45deg);
margin-left: 15px; }
#ok2{display: none;}
.goto{ border: 1px solid #fff; color: #fff;box-shadow: inherit;
background-color: #fff;
background: #fff;}
#top{ font-size: 22px;padding: 20px;}
@media (max-width: 768px){
.box{width:100%}
#top{font-size: 0;padding: 20px;}
}
.load2 .loader,
.load2 .loader:before,
.load2 .loader:after {border-radius: 50%;}
.load2 .loader:before,
.load2 .loader:after {position: absolute;content: '';}
.load2 .loader:before {width: 16px;height: 32px;background: #fff;border-radius: 32px 0 0 32px;top: -1px;left: -1px;transform-origin: 16px 16px;animation: load2 2s infinite ease 1.5s;}
.load2 .loader {font-size: 11px;text-indent: -99999em;margin: auto;position: relative;width: 30px;height: 30px;box-shadow: inset 0 0 0 4px #09f;border-radius: 50%;}
.load2 .loader:after {width: 16px;height: 32px;background: #fff;border-radius: 0 31px 31px 0;top: -1px;left: 15px;transform-origin: 0px 16px;animation: load2 2s infinite ease;}
@keyframes load2 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.load2{ position: fixed;
width: 100%;
background: #fff;
height: 100%;
z-index: 999;
top: 0;
text-align: center; padding-top: 100px;}
.loader2{ padding-top: 30px;}
</style>
<div id="top">下载文件</div>
<div class="load2" id="load2"><div class="loader"></div><div class="loader2">努力加载中...</div></div>
<div class="box">
<div id="box1" class="box1">
<div id="ok"><div class="ok"></div></div>
<div id="ok2" class="box2_2">已经通过验证</div>
<div id="go" class="submit goto"><div onclick="down_r(1);">验证并下载</div></div>
</div>
<div id="box2" class="box2">
<div class="box2_1">!</div>
<div class="box2_2">系统发现您的网络异常,需要验证后下载文件</div>
<div id="sub" class="submit"><div onclick="down_r(2);">验证并下载</div></div>
</div>
<div id="box3" class="box3">
<div id="sub2" class="submit goto"><div onclick="down_r(3);">验证并下载</div></div>
</div>
</div>
<script type="text/javascript">
setTimeout('document.getElementById("load2").style.display="none";',2000);
function down_r(el){
$('#sub').text("提交中...");
$.ajax({
type : 'post',
url : 'ajax.php',
data : { 'file':'CGBXdAkgBSEDJgdrBH9dcwQvV2NQPwo+UGcGLgUuAWUHZVtrCDBTc1RxByUHPAZ1W2QBKl5iVjtXPQApVzlbagg6VzUJewVhA2MHfgRiXWQEcVdgUDcKalBuBmMFbgFkBzFbPQhjUzJUZwdmB2AGZltnATNeOVZnVzIAM1c7WzsIOlc3CWwFZQNhBzQEZ11kBD9XfFB1CmFQJwY/BSoBZwc6WzkIZ1NiVDMHZgc1Bj5bYwE8XmBWYVc2AGJXPVs5CGpXMAkyBTADMwc1BGFdagQ7V2VQbQo8UGAGMgU8ATMHYlsqCDBTOlQ0B2kHZgZhW2cBMF45VmZXdgBgV2JbNghtV04JNQU8AzAHbAQSXTUEKlcRUGAKZVAyBnQFBgEyBylbPQhgU1hUJwcUB2UGIltAAUJeJFZtV2QAI1dOW20ILVc4CW0FdAMXB2gEdV0ZBGtXd1BNCkxQcgY5BW4BJQdCWzoIcFM+VDoHdAdqBkFbJAFBXjlWcVcSADJXLlsYCDxXJQkRBWQDcAdoBGBdeQQfV2VQKgpNUG8GJQUYATcHIltNCGZTIlRHB2gHdgY+WzUBIV45VmVXdQBDVzJbfwhJV0IJcQVoA20HdAQVXWUEe1dqUDoKLVBvBkQFfAFFBzBbKQhtUz5UJwdpB2sGKVt7AW1ecQ==','el':el,'sign':'UGFWNgpiBWAFYgViVDhVbQFsU25eYA==' },
dataType : 'json',
success:function(msg){
if(msg.zt == '1'){
$("#box2").hide(150);
$("#ok").show(150);
$("#ok2").show(150);
$(".ok").show(500);
$("#go").removeClass("goto");
$("#go").html("<a href="+ msg.url +"><span class=tc2>立即下载</span></a>");
}else{
//$('#sub').val("验证并下载");
setTimeout('window.location.reload();',1000);
}
},
error:function(){
//$("pwderr").text("获取失败,请重试");
}
});
}
</script>
</body>
<div style="display:none"></div>
</html>
抓包分析了下
触发网站防盗链,对方服务器检测没有 Accept-Language: zh-c 头就弹出验证码,值可大小写,需要这4个字符就能成功下载
比特彗星现在还不支持自定义发请求头
这个也适配一下吧 毕竟现在防盗链设置已经很普及了
之前不使用彗星下载http的其中一个原因就是他很多连接解析不出来
估计就是这个请求头有问题触发了防盗链
BT任务和HTTP任务混杂的问题基本解决了
这个防盗链的问题应该也不会特别难
还有一个问题就是浏览器扩展唤醒BC客户端可能不成功
不过具体是什么场景下会出现还需要测试
其它网站不一定是检测这个头部,比较常见的防盗链三要素(ua,来源,cookie)现有版本都有
至于哪个网站不能用得抓包分析,总之加个自定义头部那就是万能了
例如勾选"自定义头部"后,下面输入框输入自定义头部,每行一个
Accept-Language: zh-c
test: test
1: 123
有可能是长度问题,是chrome浏览器限制2048字符
最近一段时间无法使用 BitComet 下载 HTTP 链接
任务启动后很长一段时间处于 0% 的状态,之后突然开始下载
网络抓包发现,此期间 BitComet 并未发起任何 HTTP 请求
观察发现是因为 HTTP 任务会受 TCP 连接发起限制而导致阻塞,待队列后才开始下载
(正在发起的限制值为 BitComet 默认)

任务日志也没有提示,不仔细看真的很难发现
是否应该区分 BT 与 HTTP/FTP 任务的 TCP 连接限制?
至少应该有个可视化的提示,否则给人感觉 BitComet 甚至干不过浏览器
以往提及的一些 HTTP 下载问题可能都与此有关
手写请求头适合测试 日常下载用起来可就太麻烦了
还是要想办法解决一下这个问题 至少要向浏览器看齐
不一定 可能和扩展的安装方式有关
Chrome的商店里面的评论区基本都在说这个问题
我记得之前在Win10测试的时候就有这样的问题
不过我用的是360X浏览器 而且有很多绿化版的彗星
有时候会唤醒 旧版本的彗星 不确定浏览器扩展是怎么定位BC客户端的位置的
看来还是优先级的老毛病
之前rss订阅的时候就有 已经修过了
不过看起来http还没修 只需要吧http的优先级提高
放在bt连接的前面就行了
关于请求头的问题,如果要抓包分析网站的话,可以考虑抓包测试一下常见的网盘,比如:golife,百度网盘,阿里云网盘,蓝奏网盘,腾讯微云,天翼云盘,夸克网盘,115网盘等
2.15版本的保存累计流量有点问题。。。数值不正常,运行时间越久越怪,好像变成了每5分钟保存一次本次运行16TB,每天保存288次,那么运行一天就变成了异常的16X288=4608TB累计流量

等了十分钟,确实是保存多了32TB

现有版本都可以正常下载,这几个都是常见的三要素防盗链,目前只有那个蓝奏网盘服务器用的自定义方法比较偏门
更多的无用头可能有点浪费流量,特别表现在多线程下载的时候,浏览器只会发送一次头,但是下载器多线程可能是上千次
话说高级设置 network.max_connecting_connections 能不能提升到60000 注明下≥10000时需要修改MaxUserPort提示就好了
不然运行一个小时了还是阻塞这么多

regedit打开注册表,添加
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
创建文件名MaxUserPort,选DWORD,十进制写65534
该值的有效范围为5000到65534(十进制)。默认值为15000。
该值修改后立即生效,无需重启系统