上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖

【建议】站点匹配在列表里可以展示并支持点击

[复制链接]
  • TA的每日心情

    昨天 01:05
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    2

    主题

    5

    回帖

    11

    积分

    助理工程师

    积分
    11

    新人报道油中2周年

    发表于 7 天前 | 显示全部楼层 | 阅读模式

    QQ浏览器截图20250615182424.png

    抱歉,用Tampermonkey(篡改猴)用习惯了🤣🤣🤣
    有一个首页列表上的差异之处,最近这两天用ScriptCat(脚本猫)的时候,一下子就发现了,就是这里(我红框框起来的):站点!

    个人感觉咱们也能在列表上多加【站点】这一列,并且比Tampermonkey(篡改猴)多支持可以直接点击跳转到新页面打开,唯一需要处理的是:链接原本是匹配形式的,所以点击跳转的时候,得处理成实际【根链接】才行!例如:
    它可能是https://bbs.tampermonkey.net.cn/**://*.tampermonkey.net.cn/*这两种常见形式的,得处理成https://bbs.tampermonkey.net.cntampermonkey.net.cn,不知道算法上、和技术上,是不是有点麻烦~~~😏😏😏

  • TA的每日心情
    开心
    2024-11-21 13:37
  • 签到天数: 213 天

    [LV.7]常住居民III

    308

    主题

    4666

    回帖

    4404

    积分

    管理员

    积分
    4404

    管理员荣誉开发者油中2周年生态建设者喜迎中秋油中3周年挑战者 lv2

    发表于 6 天前 | 显示全部楼层
    哥哥可以在github上提,论坛的话,很容易就被其它信息淹没了

    关于站点这个可以加一下,实现起来不难

    scriptscat/scriptcat: 脚本猫,一个可以执行用户脚本的浏览器扩展
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复

    使用道具 举报

  • TA的每日心情

    昨天 01:05
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    2

    主题

    5

    回帖

    11

    积分

    助理工程师

    积分
    11

    新人报道油中2周年

    发表于 4 天前 | 显示全部楼层
    王一之 发表于 2025-6-16 08:26
    哥哥可以在github上提,论坛的话,很容易就被其它信息淹没了

    关于站点这个可以加一下,实现起来不难

    好的,已提`issues`,我顺便多看了几个脚本的`匹配规则`,比我想象的复杂,哈哈,具体的都写到`issues`里了~
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-11-21 13:37
  • 签到天数: 213 天

    [LV.7]常住居民III

    308

    主题

    4666

    回帖

    4404

    积分

    管理员

    积分
    4404

    管理员荣誉开发者油中2周年生态建设者喜迎中秋油中3周年挑战者 lv2

    发表于 3 天前 | 显示全部楼层
    Free-wang 发表于 2025-6-18 23:50
    好的,已提`issues`,我顺便多看了几个脚本的`匹配规则`,比我想象的复杂,哈哈,具体的都写到`issues`里 ...

    可能初期就只适配简单的规则
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复

    使用道具 举报

  • TA的每日心情

    昨天 01:05
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    2

    主题

    5

    回帖

    11

    积分

    助理工程师

    积分
    11

    新人报道油中2周年

    发表于 3 天前 | 显示全部楼层

    王一之 发表于 2025-6-19 09:37

    可能初期就只适配简单的规则

    哈哈,可以的可以的,本来就是更人性化的小功能,常用的能点击跳转就挺不错了!😏

    匹配多域名的用户脚本.png
    我在想一个问题:如果碰到【上图】这种脚本匹配了一堆域名的、再加上如果有用户安装了数十个【类似这种多域名的脚本】,这样一来,因为这个小功能,会不会导致这个用户进入列表,非常慢或卡?!为了这么个人性化的功能,把插件弄卡了,反而得不偿失~~~【PS:我特地试了下Tampermonkey来着,发现它是瞬间列表加载出来,然后【站点(也就是图标)】再一个个的嗖一下出来(我出来的快可能是因为我装的脚本不多、而且就上图那两个站点多的脚本),可以看得出来,它站点是在列表后加载的,这个咱也可以考虑进去】


    下面是杂谈:🤪

    今天事情不多,折腾DeepSeek折腾了个把小时,头一次遇到思考过程将近500行,而回答内容只有短短100行出头,笑死我了,真是难为DeepSeek了,突然发现如果AI再强大个几倍、一点点智障都没有的话,感觉算法工程师的路也要没了,只要需求给它说的够清楚就行(我今天让它分析时、就发现智障了好几次、虽然智障了几次、但后面纠正几遍后,发现它竟然发现了我没发现的规律、然后思路比我清晰多了🤣)🤣🤣🤣

    最后,得出了这么一段代码:

    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[i];
            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 '';
    }

    DeepSeek的思考过程.png
    DeepSeek的回答内容.png

    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-11-21 13:37
  • 签到天数: 213 天

    [LV.7]常住居民III

    308

    主题

    4666

    回帖

    4404

    积分

    管理员

    积分
    4404

    管理员荣誉开发者油中2周年生态建设者喜迎中秋油中3周年挑战者 lv2

    发表于 3 天前 | 显示全部楼层
    Free-wang 发表于 2025-6-19 17:24
    [md]哈哈,可以的可以的,本来就是更人性化的小功能,常用的能点击跳转就挺不错了!😏

    ![匹配多域名的用 ...

    我看了一下,Tampermonkey这块做了优化,他先后台读取好了icon数据,然后打开这个页面的时候,加载的实际上是本地的数据

    ---

    AI现在还是会出现幻觉,做一些比较复杂和比较大的项目的时候,还是不太行,不过快速开始一个项目,还是很不错的。AI发展得也很快,感觉初级人员快要被替代了(甚至已经?)
    上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。
    回复

    使用道具 举报

  • TA的每日心情

    昨天 01:05
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    2

    主题

    5

    回帖

    11

    积分

    助理工程师

    积分
    11

    新人报道油中2周年

    发表于 3 天前 | 显示全部楼层

    王一之 发表于 2025-6-19 17:35

    我看了一下,Tampermonkey这块做了优化,他先后台读取好了icon数据,然后打开这个页面的时候,加载的实际 ...

    是的,你不说,我都把图标忘了,它应该是取好favicon.ico了,它列表出来后,接着脚本图标站点图标才接着加载出来,我每次刷新,大概都比列表慢个不到1秒,如果是实时去网站里取favicon.ico的话,肯定更慢,脚本图标也是,应该是如你所说那样~~~

    回复

    使用道具 举报

    发表回复

    本版积分规则

    快速回复 返回顶部 返回列表