mirror of
https://gitee.com/ledc/IYUUAutoReseed
synced 2025-08-23 22:44:51 +00:00
Compare commits
6 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
945df1a9cb | ||
|
88420c4260 | ||
|
136c9ee2ba | ||
|
9497cea867 | ||
|
6f23c966e1 | ||
|
9d8eee73d9 |
@@ -13,7 +13,7 @@ use IYUU\Library\Table;
|
||||
class AutoReseed
|
||||
{
|
||||
// 版本号
|
||||
const VER = '1.10.22';
|
||||
const VER = '1.10.23';
|
||||
// RPC连接
|
||||
private static $links = [];
|
||||
// 客户端配置
|
||||
@@ -31,7 +31,7 @@ class AutoReseed
|
||||
// API接口配置
|
||||
public static $apiUrl = 'http://api.iyuu.cn';
|
||||
public static $endpoints = array(
|
||||
'login' => '/user/login',
|
||||
'login' => '/App.Api.Bind',
|
||||
'sites' => '/api/sites',
|
||||
'infohash'=> '/api/infohash',
|
||||
'hash' => '/api/hash',
|
||||
@@ -39,7 +39,9 @@ class AutoReseed
|
||||
'recommendSites' => '/Api/GetRecommendSites',
|
||||
'getSign' => '/Api/GetSign'
|
||||
);
|
||||
// curl
|
||||
/**
|
||||
* @var null | Curl
|
||||
*/
|
||||
private static $curl = null;
|
||||
// 退出状态码
|
||||
public static $ExitCode = 0;
|
||||
@@ -523,7 +525,7 @@ class AutoReseed
|
||||
}
|
||||
$downloadUrl = $_url;
|
||||
} else {
|
||||
$url = self::getTorrentUrl($siteName, $_url);
|
||||
$url = self::getTorrentUrl($siteName, $sid, $_url);
|
||||
$downloadUrl = $url;
|
||||
}
|
||||
|
||||
@@ -933,20 +935,29 @@ class AutoReseed
|
||||
/**
|
||||
* 获取站点种子的URL
|
||||
* @param string $site
|
||||
* @param int $sid
|
||||
* @param string $url
|
||||
* @return string 带host的完整种子下载连接
|
||||
*/
|
||||
private static function getTorrentUrl($site = '', $url = '')
|
||||
private static function getTorrentUrl($site = '', $sid = 0, $url = '')
|
||||
{
|
||||
global $configALL;
|
||||
// 注入合作站种子的URL规则
|
||||
$url = self::getRecommendTorrentUrl($site, $url);
|
||||
// 兼容旧配置,进行补全
|
||||
if (isset($configALL[$site]['passkey']) && $configALL[$site]['passkey']) {
|
||||
if (empty($configALL[$site]['url_replace'])) {
|
||||
$configALL[$site]['url_replace'] = array('{passkey}' => trim($configALL[$site]['passkey']));
|
||||
// 注入URL替换规则
|
||||
if (in_array($site, self::$recommend)) {
|
||||
$url = self::getRecommendTorrentUrl($site, $url);
|
||||
} else {
|
||||
$reseed_check = self::$sites[$sid]['reseed_check'];
|
||||
if ($reseed_check && is_array($reseed_check)) {
|
||||
$replace = [];
|
||||
foreach ($reseed_check as $value) {
|
||||
$value = ($value === 'uid' ? 'id' : $value); // 兼容性处理
|
||||
$key = '{' . $value .'}';
|
||||
$replace[$key] = empty($configALL[$site][$value]) ? '' : $configALL[$site][$value];
|
||||
}
|
||||
$configALL[$site]['url_replace'] = $replace;
|
||||
}
|
||||
}
|
||||
|
||||
// 通用操作:替换
|
||||
if (isset($configALL[$site]['url_replace']) && $configALL[$site]['url_replace']) {
|
||||
$url = strtr($url, $configALL[$site]['url_replace']);
|
||||
@@ -969,24 +980,15 @@ class AutoReseed
|
||||
global $configALL;
|
||||
if (in_array($site, self::$recommend)) {
|
||||
$now = time();
|
||||
$uid = isset($configALL[$site]['id']) ? $configALL[$site]['id'] : $now;
|
||||
$uid = isset($configALL[$site]['id']) ? $configALL[$site]['id'] : 0;
|
||||
$pk = isset($configALL[$site]['passkey']) ? trim($configALL[$site]['passkey']) : $now;
|
||||
$hash = md5(trim($pk));
|
||||
|
||||
$signString = self::getDownloadTorrentSign($site); // 检查签名有效期,如果过期获取新的签名
|
||||
switch ($site) {
|
||||
case 'pthome':
|
||||
case 'hdhome':
|
||||
case 'hddolby':
|
||||
//兼容性处理:新旧规则
|
||||
if (isset($configALL[$site]['rss']) && $configALL[$site]['rss']) {
|
||||
$url = str_replace('passkey={passkey}', 'uid={uid}&hash={hash}', $url);
|
||||
$hash = $configALL[$site]['rss']; // 直接提交专用下载hash
|
||||
}
|
||||
break;
|
||||
case 'ourbits':
|
||||
// 兼容旧版本的IYUU
|
||||
if (isset($configALL[$site]['id']) && $configALL[$site]['id']) {
|
||||
if ($uid) {
|
||||
$url = str_replace('passkey={passkey}', 'uid={uid}&hash={hash}', $url);
|
||||
}
|
||||
// TODO... 注入流控规则 60S/20pcs、3600S/100pcs
|
||||
|
@@ -664,5 +664,34 @@ return array(
|
||||
'url_replace' => array(),
|
||||
'url_join' => array(),
|
||||
),
|
||||
// npupt 蒲公英
|
||||
'npupt' => array(
|
||||
// 如果需要用下载免费种脚本,须配置(只是自动辅种,可以不配置此项)
|
||||
'cookie' => '',
|
||||
// 如果需要自动辅种,必须配置
|
||||
'passkey' => '',
|
||||
),
|
||||
// hdatmos 阿童木
|
||||
'hdatmos' => array(
|
||||
// 如果需要用下载免费种脚本,须配置(只是自动辅种,可以不配置此项)
|
||||
'cookie' => '',
|
||||
// 如果需要自动辅种,必须配置
|
||||
'passkey' => '',
|
||||
),
|
||||
'greatposterwall' => array(
|
||||
// 如果需要用下载免费种脚本,须配置(只是自动辅种,可以不配置此项)
|
||||
'cookie' => '',
|
||||
// 如果需要自动辅种,必须配置
|
||||
'passkey' => '', // torrent_pass
|
||||
'torrent_pass' => '', // torrent_pass
|
||||
'authkey' => '', // authkey
|
||||
),
|
||||
// hudbt 华科蝴蝶
|
||||
'hudbt' => array(
|
||||
'cookie' => '',
|
||||
'passkey' => '',
|
||||
'url_replace' => array(),
|
||||
'url_join' => array(),
|
||||
),
|
||||
// 配置结束,后面的一行不能删除,必须保留!!!
|
||||
);
|
||||
|
@@ -55,7 +55,7 @@ IYUU自动辅种工具(英文名:IYUUAutoReseed),是一款PHP语言编
|
||||
2. qBittorrent
|
||||
|
||||
## 支持自动辅种的站点
|
||||
学校、杜比、家园、天空、朋友、馒头、萌猫、我堡、猫站、铂金家、烧包、北洋、TCCF、南洋、TTG、映客、城市、52pt、brobits、备胎、SSD、CHD、ptmsg、leaguehd、聆音、瓷器、hdarea、eastgame(TLF)、1ptba、hdtime、hd4fans、opencd、hdbug、hdstreet、joyhd、u2、upxin(HDU)、oshen、discfan(GZT)、cnscg圣城(已删除)、北邮、CCFBits、dicmusic、天雪、葡萄、HDRoute、伊甸园hdbd、海胆haidan、HDfans、龙之家、百川PT。
|
||||
学校、杜比、家园、天空、朋友、馒头、萌猫、我堡、猫站、铂金家、烧包、北洋、TCCF、南洋、TTG、映客、城市、52pt、brobits、备胎、SSD、CHD、ptmsg、leaguehd、聆音、瓷器、hdarea、eastgame(TLF)、1ptba、hdtime、hd4fans、opencd、hdbug、hdstreet、joyhd、u2、upxin(HDU)、oshen、discfan(GZT)、cnscg圣城(已删除)、北邮、CCFBits、dicmusic、天雪、葡萄、HDRoute、伊甸园hdbd、海胆haidan、HDfans、龙之家、百川PT、HDAI、蒲公英、阿童木、蝴蝶。
|
||||
|
||||
## 运行环境
|
||||
具备PHP运行环境的所有平台,例如:Linux、Windows、MacOS!
|
||||
|
Reference in New Issue
Block a user