用戶: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:討論版/操作申請或其他渠道)提出的批量操作需求,編寫代碼進行批量操作。
目前已經有編寫好的代碼、可以快速進行的操作包括:
- 消歧義頁鏈入清理(對單個消歧義頁)
- 連結查找和替換(支持首字母大小寫、空格與下劃線、簡繁等同義格式)
- 模板嵌入參數查詢:對指定模板,檢查有哪些嵌入頁面使用了某個參數。可用於在改動模板參數設計前檢查和清理舊有使用。
如有其他需求可以聯繫我,如果有時間且感覺可行的話我會嘗試編寫。