【建议】站点匹配在列表里可以展示并支持点击
!(data/attachment/forum/202506/15/182842kgs2dtddto6t2mg9.png)抱歉,用(https://www.tampermonkey.net/)用习惯了🤣🤣🤣
有一个首页列表上的差异之处,最近这两天用(https://scriptcat.org/zh-CN/)的时候,一下子就发现了,就是这里(我红框框起来的):站点!
个人感觉咱们也能在列表上多加【站点】这一列,并且比(https://www.tampermonkey.net/)多支持可以直接点击跳转到新页面打开,唯一需要处理的是:链接原本是匹配形式的,所以点击跳转的时候,得处理成实际【根链接】才行!例如:
它可能是`https://bbs.tampermonkey.net.cn/*`或`*://*.tampermonkey.net.cn/*`这两种常见形式的,得处理成`https://bbs.tampermonkey.net.cn`或`tampermonkey.net.cn`,不知道算法上、和技术上,是不是有点麻烦~~~😏😏😏
哥哥可以在github上提,论坛的话,很容易就被其它信息淹没了
关于站点这个可以加一下,实现起来不难
scriptscat/scriptcat: 脚本猫,一个可以执行用户脚本的浏览器扩展
王一之 发表于 2025-6-16 08:26
哥哥可以在github上提,论坛的话,很容易就被其它信息淹没了
关于站点这个可以加一下,实现起来不难
好的,已提`issues`,我顺便多看了几个脚本的`匹配规则`,比我想象的复杂,哈哈,具体的都写到`issues`里了~ Free-wang 发表于 2025-6-18 23:50
好的,已提`issues`,我顺便多看了几个脚本的`匹配规则`,比我想象的复杂,哈哈,具体的都写到`issues`里 ...
可能初期就只适配简单的规则 王一之 发表于 2025-6-19 09:37
可能初期就只适配简单的规则
哈哈,可以的可以的,本来就是更人性化的小功能,常用的能点击跳转就挺不错了!😏

我在想一个问题:如果碰到【上图】这种脚本匹配了一堆域名的、再加上如果有用户安装了数十个【类似这种多域名的脚本】,这样一来,因为这个小功能,会不会导致这个用户进入列表,非常慢或卡?!为了这么个人性化的功能,把插件弄卡了,反而得不偿失~~~【PS:我特地试了下(https://www.tampermonkey.net/)来着,发现它是瞬间列表加载出来,然后【站点(也就是图标)】再一个个的嗖一下出来(我出来的快可能是因为我装的脚本不多、而且就上图那两个站点多的脚本),可以看得出来,它站点是在列表后加载的,这个咱也可以考虑进去】
---
下面是杂谈:🤪
今天事情不多,折腾DeepSeek折腾了个把小时,头一次遇到`思考过程`将近500行,而`回答内容`只有短短100行出头,笑死我了,真是难为DeepSeek了,突然发现如果AI再强大个几倍、一点点智障都没有的话,感觉算法工程师的路也要没了,只要需求给它说的够清楚就行(我今天让它分析时、就发现智障了好几次、虽然智障了几次、但后面纠正几遍后,发现它竟然发现了我没发现的规律、然后思路比我清晰多了🤣)🤣🤣🤣
最后,得出了这么一段代码:
```typescript
function processUrlPattern(pattern: string): string {
// 检查是否包含"://"
const protocolEnd = pattern.indexOf('://');
if (protocolEnd === -1) {
return '';
}
// 1. 提取协议部分
const protocol = protocolEnd >= 0 ? pattern.substring(0, protocolEnd) : '';
const rest = protocolEnd >= 0 ? pattern.substring(protocolEnd + 3) : pattern;
// 2. 提取主机部分(到第一个斜杠或结尾)
const firstSlash = rest.indexOf('/');
const host = firstSlash >= 0 ? rest.substring(0, firstSlash) : rest;
// 处理没有主机部分的情况
if (!host) {
return "";
}
// 3. 验证主机是否包含有效域名结构
const domainLevels = host.split('.');
// 从后向前扫描域名层级,统计有效段数
let validLevelCount = 0;
// 从后向前扫描域名层级
for (let i = domainLevels.length - 1; i >= 0; i--) {
const segment = domainLevels;
if (segment.includes('*')) {
break;
}
validLevelCount++;
}
// 4. 域名有效性判断(至少两级有效域名)
if (validLevelCount < 2) {
return '';
}
// 5. 提取有效域名部分(最后validLevelCount个层级)
const validDomain = domainLevels.slice(domainLevels.length - validLevelCount).join('.');
// 6. 协议处理逻辑:根据协议类型决定输出格式
if (protocol === 'http' || protocol === 'https') {
return `${protocol}://${validDomain}/`;
} else if (protocol.includes('*') || protocol === '') {
return validDomain;
}
// 最后:其他协议类型或无法预料的情况统统都返回空
return '';
}
```
!(data/attachment/forum/202506/19/161352xdjzv5z8ipfzkeje.png)
!(data/attachment/forum/202506/19/161418tvn8tzvqrwv0zwkw.png) Free-wang 发表于 2025-6-19 17:24
哈哈,可以的可以的,本来就是更人性化的小功能,常用的能点击跳转就挺不错了!😏
![匹配多域名的用 ...
我看了一下,Tampermonkey这块做了优化,他先后台读取好了icon数据,然后打开这个页面的时候,加载的实际上是本地的数据
---
AI现在还是会出现幻觉,做一些比较复杂和比较大的项目的时候,还是不太行,不过快速开始一个项目,还是很不错的。AI发展得也很快,感觉初级人员快要被替代了(甚至已经?) 王一之 发表于 2025-6-19 17:35
我看了一下,Tampermonkey这块做了优化,他先后台读取好了icon数据,然后打开这个页面的时候,加载的实际 ...
是的,你不说,我都把图标忘了,它应该是取好`favicon.ico`了,它列表出来后,接着`脚本图标`和`站点图标`才接着加载出来,我每次刷新,大概都比列表慢个不到1秒,如果是实时去网站里取`favicon.ico`的话,肯定更慢,脚本图标也是,应该是如你所说那样~~~
页:
[1]