功能说明
匹配页面上的所有番号,并添加跳转链接。
支持对匹配的番号进行查重,查重番号来源共三种,可随意搭配:
- jellyfin/emby:调用本地或nas上的jellyfin/emby API进行查重。
- 115:调用115网盘的API查重,并提供115 Cookie持久化、一键离线、查询影片是否已离线及115在线观看功能。
- 手动输入的番号:对于不用jellyfin/emby/115的用户,可手动输入番号
通过快捷键触ee发匹配,也可通过快捷键ss取消匹配,控制权完全在你。
特点是:无hover弹框、响应快、请求少、操作丝滑,就像开手动挡汽车般, everything is under control。
支持常见的老司机网站javbus、javdb、javlibrary,也可自行添加@match,新增任意网站。
使用方法
jellyfin/emby
打开设置,enable设为true,填入apiKey和serverUrl,点击确定
115
要使用115功能,需注意油猴插件必须用测试版,正式版不支持设置httpOnly的cookie。
参考:https://www.tampermonkey.net/documentation.php?ext=dhdg&version=5.3.3#api:GM_cookie.list
打开115设置,enable设为true,并设置cookie,点击确定。
设置cookie有两种方式,任选一种
- 打开115设置,手动填入cookie字符串
- 去115官网,手机扫码登录网页端,打开115设置,点击获取cookie
手动输入番号
首先打开设置,localCodeEnable设为true。
再打开手动输入番号,复制粘贴番号到输入框,番号之间可用空格、换行、逗号、分号分隔,番号命名格式也较为宽松,脚本会自动识别并修正。
手动输入名称
这是对于非番号类名称的补充,将这类名称也当作番号处理。注意,由于这类名称千奇百怪,所以输入时仅支持换行分隔,而且页面上的名称必须跟你输入的名称完全相同才会匹配。
获取alist下载直链
如果你在用alist挂载115网盘,要下载文件时,要先打开alist页面,找到你要下载的资源,右键复制链接。你是否感觉这个过程很繁琐?
这个功能可以帮你简化这个流程,无需打开alist页面,只需要按ee匹配番号,等出现alist图标后,直接点击会跳转到alist在线观看。按住shift再点击可复制下载直链。按住alt再点击可直接调用浏览器下载。
要达到这个效果,首先需要打开alist设置-->全局-->关闭签名。此举是为了通过目录名和文件名直接获取直链。
然后打开插件的115设置,填写alistUrl和cidPair
- alistUrl: 即文件在alist中的地址,例如
http://127.0.0.1:5244/115/${dir}/${file}
, dir会被替换为实际的目录,file则会被替换为实际的文件名,仅支持一级目录。
- cidPair: cid与目录的映射关系,形如
1234:云下载; 5678:其他目录
alistUrl就是根据这个配置将dir替换为真正的目录名。cid可在115网页中打开对应的目录,地址栏中看到。
插件会对115网盘的文件数据进行缓存,而我们可能会对文件进行整理,这会导致获取到错误的直链。
比如文件本来在云下载目录,它所属的cid是1234,插件缓存了这个数据。如果文件移动到了其他目录,文件的cid变成了5678,直链应该相应地更新dir为其他目录。
但此时缓存并没有更新,所以直链的dir依然是云下载。
这个问题有三个解决办法:
如果是单个文件,那只需要按住alt然后点击番号名称后面的115图标,就会刷新这个番号的缓存
如果是多个文件,一个个点起来就会很麻烦,此时可以可以修改cidPair,比如上面的例子,我们可以把1234对应的目录也改为其他目录,即 1234:其他目录; 5678:其他目录
。让所有文件的dir都默认为其他目录,但这样又会导致云下载的文件获取到错误的链接。
直接打开115设置,点击刷新所有缓存,这是兜底的办法,会请求115网盘的全量数据,要谨慎使用。
新增了一个方案,由插件提供移动功能,移动成功后就能顺便更新缓存。具体方法是打开115设置,move
中填写源cid: 目的cid
,
比如1234: 5678
,点击确定,再打开115设置,点击批量移动,就会将1234目录中的文件移动到5678目录中,同时更新缓存。
注意,只有匹配本插件番号规则的视频文件才会被移动,这意味着非番号类视频、目录、图片等文件将不会被移动。
按键说明
键鼠组合
对于链接:
- 鼠标左键:打开链接,且焦点跟随新标签页(磁力链接会调用默认下载软件)
- ctrl+鼠标左键: 打开链接,且焦点留在当前页面
- shift+鼠标左键:打开备用链接,即secondarySite
- alt+鼠标左键:仅对番号类型的链接生效,目的是同步该番号在115的状态
对于按钮或图标:
- 鼠标左键:打开按钮绑定的链接
- ctrl+鼠标左键:
- 为防止误触,设置中某些按钮和离线操作,必须按住ctrl才生效。
- 其他按钮表现等同于链接,即打开链接且焦点留在当前页面
- alt+鼠标左键:
- alist图标:表示直接调用浏览器下载文件
- 115图标: 表示从115中删除该文件
另外无论是链接或按钮,鼠标右键都能复制文本,文本的内容根据实际情况可能是:番号、磁链、播放链接、下载链接等
快捷键
- ee: 开始匹配
- ss: 页面恢复原状
- aa: 匹配完成后,复制所有磁力链接
- qq: 匹配完成后,复制所有ed2k链接
设置项说明
// 默认设置项
const defaultSettings = {
// 是否开启jellyfin/emby功能
enable: true,
// 是否开启本地番号填写功能
localCodeEnable: false,
// 在其他图标已存在时,是否依然显示本地图标
forceShowLocalBtn: false,
// 从jellyfin/emby 控制台获取
apiKey: '',
// 服务器地址
serverUrl: 'http://127.0.0.1:8096',
// jellyfin用户保持为false,emby用户需设置为true
isEmby: false,
// 若为true,则在页面加载完成后自动触发一次过滤
triggerOnload: false,
// 自定义快捷键,可以是任意长度的字母或数字
hotKeys: 'ee',
// 脚本会改变页面的原有结构,此处定义可使页面恢复原状的快捷键
recoverHotKeys: 'ss',
// 复制所有磁力链接快捷键
copyMagnetHotKeys: 'aa',
// 复制所有ed2k链接快捷键
copyEd2kHotKeys: 'qq',
// 点击番号时的默认跳转链接,${code}会被替换为真正的番号
openSite: 'https://www.javbus.com/${code}',
// 点击番号时按住shift键时的跳转链接
secondarySite: 'https://javdb.com/search?q=${code}',
// 若番号被识别为fc2,默认会跳转到的链接
fc2Site: 'https://sukebei.nyaa.si/user/offkab?q=${code}',
// 设为true时浏览器控制台会输出log
debug: false,
// 定义生成链接的默认颜色
linkColor: '#236ED0FF',
// 定义被访问过的链接颜色
linkVisitedColor: '#424F5FFF',
// 番号在jellyfin/115/本地中存在时显示的链接颜色
linkExistColor: '#2A7B5FFF',
// 定义磁力和ed2k链接的颜色
magnetColor: 'orange',
// 高亮卡片边框样式
emphasisOutlineStyle: '2px solid red',
// 默认会高亮不存在的番号,设置为true则反之
reverseEmphasis: false,
// 是否尽量复用窗口,可以加快打开速度
openLinkInSameTab: false
}
// 默认115设置项
const defaultOOFSettings = {
// 是否开启115相关功能
enable: false,
// 115的cookie,可自行输入或点击自动获取,任选其一
cookie: '',
// 自定义cookie过期时间,单位为天
expiresIn: '30',
// 一个番号如果在jellyfin和115中都存在,默认只显示一个jellyfin图标,若设置为true,则也会显示115图标
forceShowOOFBtn: false,
// 115在线观看链接
openSite: 'https://v.anxia.com/?pickcode=${code}',
// 首次匹配115网盘文件时,需要批次获取全量数据
// limit定义每次获取条数,根据实际情况谨慎填写,过大可能导致服务器返回缓慢,过小请求次数过多可能触发115风控
limit: '500',
// 离线目录id, 留空则115会保存在云下载目录
cid: '',
// 是否开启alist功能
alistEnable: false,
// alist地址: http://127.0.0.1:5244/d/115/${dir}/${file}
alistUrl: '',
// cid与目录名的对应关系: 1111:目录1; 2222:目录2 用来匹配alistUrl
cidPair: '',
// 将115中某个目录中所有匹配番号规则的视频文件移动到另一个目录
// 格式为cid对,比如 1111:2222 会将目录1中的文件移动到目录2
move: ''
}