User:C8H17OH-bot
“ | 历史原型什么的最讨厌啦! | ” |
基本资料 | |
编辑页面数 | {{#cscore:C8H17OH-bot|pages}}个页面! |
---|---|
编辑次数 | {{#cscore:C8H17OH-bot|changes}}次编辑! |
战斗力 | {{#cscore:C8H17OH-bot|score}}分! |
C8H17OH-bot是C8H17OH基于Pywikibot开发的机器人。
任务/功能
消歧义页链入清理
检查消歧义页的链入,对易于清理的进行清理,即将页面中指向消歧义页的链接改为正确的条目。程序算法大致如下:
- 从消歧义页逐行读取文本,将每行破折号前的链接视作消歧义项,将消歧义项的前缀、后缀以及该行其他链接的名称、显示文字作为该消歧义项的“关键词”;没有读到破折号的行则跳过。
- 逐个检查消歧义页的每个链入页面,跳过所有讨论页面,跳过所有消歧义项本身:
- 对于主空间和模板空间的页面:
- 检查其页面名与分类,如果页面名或某个分类中出现了某个消歧义项的“关键词”,则标记该链入页面中指向消歧义页的链接可能本应指向该消歧义项;
- 如果通过前一步未找到可能的消歧义项,则再逐行读取链入页面的文本,若某一行带有消歧义页的链接的文本中同时带有某个消歧义项的“关键词”,则进行标记;
- 最终如果该链入页面只有一个可能的消歧义项,则将页面和对应消歧义项列入自动处理名单;
- 若未发现可能的消歧义项,或可能的消歧义项有多个,则列入人工复检名单。
- 对于其他非讨论名字空间的页面,直接列入人工复检名单。
- 对于主空间和模板空间的页面:
- 全部检查完成后,列出自动处理名单,交人工确认是否执行;列出人工复检名单。
其中前缀、后缀的含义参见萌娘百科:条目命名#重名处理原则。
理想状态下,“关键词”为
- 若消歧义项为作品中角色,“关键词”为该角色登场的作品;
- 若消歧义项为歌曲,“关键词”为该歌曲的创作者、演唱者或tie-up的ACGN作品。
本程序易于清理的情况包括:
- 链入页面本身为与“关键词”直接关联、因而页面名中含有关键词,或带有相关分类的页面(2.1.1);
- 声优配音角色列表、萌属性典型角色列表等列举性章节中出现指向消歧义页的链接,而同一行中即有作品名的情况(2.1.2)。
其他情况则难以处理。
由于上述判断带有一定的不准确性,以及操作者个人知识和精力对人工复查准确度的影响,程序有可能出现错误的链接更改。对于部分已知的可能出错的页面,会列入单独的跳过列表,在程序运行时予以跳过。
程序会定期(初步定为每月)我想起来的时候检查站内所有消歧义页,并在人工监督下清理;此外,在特定情况下,例如将某个条目移动至带前缀或后缀的名称并将原名页面改为消歧义页后,也会处理单个消歧义页。
关于崩坏学园2/崩坏3与Undertale/deltarune
这两个系列有个共同点:
- 系列内作品有大量同名角色,且其中绝大部分不与系列外角色同名;
- 萌娘百科相应专题的编辑者对这些同名角色按照系列内作品进行了拆分,并在无后缀名创建了消歧义页。
上述现象导致本机器人会检查出许多指向此类消歧义页的链接,尤其是会发现大量拆分完成后的历史遗留。
这一现象一度使我苦恼是否要执行此类消歧义,尤其是在我对这两个系列都不甚了解的前提下,有时难以判断某处提及到底是指其中一部作品的该角色还是指整个系列的该角色。目前我所采取的原则是Yes。
如果有关于此事的任何意见建议,欢迎联系我讨论。
清理B站链接参数
清理站内指向bilibili的链接中的“spm_id_from”无用GET参数(或称URL参数、查询参数),包括:
参数名 | 二级域名 | 备注 |
---|---|---|
from | www manga mall …… |
|
seid | (忘了) | |
spm_id_from | www | 似乎与网页端点击链接有关 |
vd_source | ||
from_spmid | (忘了) | |
referfrom | manga | |
bilifrom | www vc t space |
似乎与分享链接有关? |
share_source | ||
share_medium | ||
share_plat | ||
share_session_id | ||
share_tag | ||
share_times | ||
timestamp | ||
bbid | ||
ts | ||
from_source | search | |
broadcast_type | live | |
is_room_feed | live |
这些参数仅供网站分析用户的行为路径,其值对页面本身无影响,故无需(甚至说不应该)保留在本站存放的此类链接中。
本程序遍历主(或其他)名字空间的所有页面,遍历页面上的所有外部链接,如果发现B站链接中的无用参数,则在原文中去除它们,经操作者确认后提交。
执行其他批量操作
根据操作者或其他用户(通过萌娘百科_talk:讨论版/操作申请或其他渠道)提出的批量操作需求,编写代码进行批量操作。
目前已经有编写好的代码、可以快速进行的操作包括:
- 消歧义页链入清理(对单个消歧义页)
- 链接查找和替换(支持首字母大小写、空格与下划线、简繁等同义格式)
- 模板嵌入参数查询:对指定模板,检查有哪些嵌入页面使用了某个参数。可用于在改动模板参数设计前检查和清理旧有使用。
如有其他需求可以联系我,如果有时间且感觉可行的话我会尝试编写。