用戶:Cewbot
外觀
Cewbot | |
---|---|
(討論 · 貢獻) | |
操作者 | kanashimi |
設計者 | kanashimi |
是否已批准? | Yes |
機械人權限? | 是 |
任務 | 見作業列表 |
編輯頻率 | 平均每分鐘12次 |
編輯時段 | 定期/常時持續 |
自動/手動 | 全自動編輯 |
程式語言 | JavaScript |
遵守機械人規範? | 是 |
原始碼公開? | GitHub上的wikibot頁面。 另見各作業說明 |
可以緊急停止? | 是 |
Cewbot的用戶框 |
此為機械人帳號,使用wikiapi,操作者為kanashimi(討論),屬合規附屬帳戶,以半自動或全自動方式協助用戶處理繁瑣而重複的工作。此機械人已得到許可,亦正在運作中。申請存檔見此 管理員︰若然此機械人失靈或作出有問題編輯,請施予封禁。 |
按下作業列表之「停止」連結可停止個別作業。機械人會在正當前批次處理完成後停止,通常是兩三百個頁面。 按左方封禁鈕將封鎖此帳號,並停止所有作業。 |
歡迎提供各種特殊情況以作測試,並請協助檢查錯誤。 若對我輸出的任何文本內容有改進建議,請前往討論頁提出修改意見。 |
此機械人在Wikimedia Toolforge上執行,工具賬戶名為cewbot。 致管理員:如果這個機械人因程式問題需要封鎖,封鎖時請停用自動封鎖以免影響其他在Toolforge上執行的機械人。 |
機械人設計理念
[編輯]以下列出理想之機械人設計理念:
- 最小化更動
- 若是完全不更動也能接受,就不更動。若必須更動,則在可確認的範圍內一次更改到位,包括規範化;否則僅作最小修正。
- 除非是非修正不可的問題,否則應該盡量避免修改封存紀錄。
- 一次到位
- 更動具穩定度。同樣操作執行一次後,第二次執行就不該有更動。
- 僅更動篩選過的內容
- 僅處理確認屬於本次任務之 pattern。對於無法解析或有問題者,跳過不處理之。寧可漏判 (false negative) 也不誤判 (false positive)。例如先對內容作盡可能精準之模式匹配,並針對符合之部分方作更動。若模糊無法判別,則不更動,而註記為可能需要增加模式、或需要人工判別之內容。
- cf. 最小權限原則
- 考量特殊wikitext
- 處理頁面最好採用語法解析器。直接處理wikitext時,須考量特殊情形。如:
- 考量相同表現之語法。如:要尋找所有「軟體」亦須匹配字詞轉換語法「軟-{}-體」。
- 要偵測所有{{Tl}}須排除「
<!-- {{Template:Tl}} -->
」或在<nowiki></nowiki>
中的情況。 - 使用
{{-}}
、{{!}}
、{{=}}
、解析器函數、特殊字符與魔術字的情況。例如要找「機械人」,也得考慮「{{{name|{{int:Group-bot}}}}}
」。
因此:
- 依據規範產生wikitext,少用花俏(漂亮舒適而繁雜)但能產生(解析出)相同表現之語法。
- 對大量使用之外部連結,以模板替代之。e.g., 近代デジタルライブラリーのアドレス変更およびテンプートによるカプセル化
- 繁簡文字直接用分歧性最大的語言,於分歧性小的語言自動轉換就沒有這個煩惱了。就「-{回复}-」、「-{回復}-」、「-{回覆}-」來說,使用繁體,簡體自動轉換。遇到「著」這個這個字則分開成「着」和「著」(
由於「著」字意思太多,香港和大陸將「着」、「著」二字分家,其實比台灣只用一字更能消除歧義。
)。這樣都能顯著降低轉換錯誤的困擾。(Wikipedia:互助客棧/其他#假如有很簡潔扼要的方法能解決繁簡轉換問題,是否有必要特地使用複雜的手工轉換標籤?有相關討論) - 字詞轉換應該盡可能維持整個詞彙的完整,這樣除了人類容易讀原始碼,亦可方便機器處理。若無必要,建議採用「-{軟體}-」而非「軟-{}-體」以方便搜尋。必要時,亦可考慮以零寬空格代替<nowiki>。
- 完整記錄
- 盡可能作完整記錄。可能的話還包含 undo script。
- 更動後須測試再上路
- 每次更動後皆先作小幅度測試。若發生問題則即時回復,確保沒問題再正式上路,應用於成品/上線環境 (production environment)。
- 考量人類作業的因素
- 機械人的操作應該能夠讓人類理解。並且若是人類手動代替機械人操作部分作業時,機械人也能夠正確判別以及運作。
- 機械人對使用者編輯的修正應採用友善的語氣。
- 當機械人失靈時,人類應當有辦法手動代替作業。例如不能夠把知道某些密碼、密鑰或是雜湊值或者其生成方法當作編輯後能夠正確運作的條件。
- 機械人應考慮作業到一半被其他人或者其他機械人插斷、編輯衝突的情況,若可行則再次作業,或採行相對應的措施。
- 開放原始碼並且維持一個能夠即時修改維護程式的團隊
- 這可以讓機械人在出問題、有漏洞時可以即時更正,並且避免機械人年久失修、無人維護。
Cewbot 作業列表
[編輯]# | 作業用途 說明 | 狀態 | 備注 |
---|---|---|---|
1 | 替換臺鐵圖徽為SVG版本 | 已完成 | 開始機械人作業請求 |
2 | 添加規範控制模板 | 已完成 | |
3 | 修正不適宜用詞:相關詞條 | 未批准 | |
4 | 修正錯別字:錢鍾→錢鍾 | 已完成 | |
5 | 修正配音誤用模板 | 已完成 | |
6 | 提報關注度不足過期提醒 | daily 每日運行 «停止» | |
7 | 拆分或合併維護模板 {{Multiple issues}} | regularly 定期運行 «停止» | |
s:1 | 校訂繁簡轉換,修正錯別字 | 未批准 | @維基文庫 |
8 9 10 13 18 |
修復維基百科語法錯誤 (WP:WPCHECK), Special:LintErrors錯誤語法清理 |
regularly 定期運行 «停止» | |
N/A | 記錄頁面之維護清理與歸檔封存作業 僅執行於使用者與bot頁面 |
regularly 定期運行 | 2016/3/23– @zhwiki 2016/6/9– @jawiki 只在擁有者用戶空間編輯,依據方針毋需申請 |
d:1 | Import labels/aliases | regularly 定期運行 | @wikidata |
11 | 使用Wikidata數據來清理跨語言連結 | 未批准 | 由機械人修復跨語言連結 |
ja:1 | 仮リンク整備 | regularly 定期運行 | @jawiki |
d:2 | Synchronize data | regularly 定期運行 | @wikidata |
ja:1-2 | Bot作業依頼 | 不定期運行 | @jawiki |
en:1 | Convert interlanguage link templates with local article to wikilinks | weekly 每週運行 | @enwiki, also help bot requests |
n:1 | 檢查與維護外部連結 | 停止運行 | @wikinews |
n:2 | 匯入每日報紙頭條新聞標題 | daily 每日運行 | @wikinews |
n:3 | 存檔保護作業 | daily 每日運行 | @wikinews |
n:4 | 自動定時清理沙盒 | daily 每日運行 | @wikinews |
d:3 | Import data from 臺灣物種名錄 (Q26218155) to wikidata. | regularly 定期運行 | @wikidata, 臺灣物種名錄 |
12 | 將跨語言連結模板轉為內部連結(一般 wikilink) | regularly 定期運行«停止» | 受影響頁面 |
ja:2 | ウィキ文法のチェックと修正 | 不定期運行 | @jawiki |
moegirl 1 | 自動存檔萌娘百科討論版、提問求助區。自動定時清理沙盒。 | 清理沙盒由星海-adminbot代 continuous 持續運行 自動存檔: 由AnnAngela-abot取代 |
@萌娘百科 |
c:1 | Add photo links on TAIBNET of species. | Declined 因版權問題未批准 |
@commons |
c:2 | Upload images from 慕光之城 蛾類世界. | Declined 因版權問題未批准 |
@commons |
c:3 | Upload pictures from Public Domain Pictures.net with tags. | Declined 因版權問題未批准 |
@commons |
14 | fix LanguageConverter syntax | 未批准 | |
15 | 幫忙補簽名 | continuous 持續運行 «停止» | |
大典:1 | 沙盒清理+幫忙補簽名+語法校正 | continuous 持續運行 | @大典, approved |
n:5 | 半自動匯入美國之音的報導 | continuous 持續運行 | @wikinews 常時運行 |
n:6 | 幫忙補簽名 | continuous 持續運行 | @wikinews |
n:7 | 更新討論頁面主題列表 | continuous 持續運行 | @wikinews |
n:8 | 定期封存討論頁面 | regularly 定期運行 | @wikinews |
大典:2 | 更新討論頁面主題列表 | continuous 持續運行 | @大典 |
c:4 | Cleanup Panoramio files needing categories | completed 已完成 | @commons, also help bot requests |
16 | 更新討論頁面主題列表 | continuous 持續運行 «停止» | |
ja:3 | 見やすい議題一覧表の作成 | continuous 常時稼働中 | @jawiki |
s:2 | 更新討論頁面主題列表+補簽名+沙盒清理 | continuous 持續運行 | @維基文庫 |
17 | 自動定時清理沙盒 | regularly 定期運行 «停止» | |
c:5 | Import M 6+ USGS earthquake shakemaps and DYFI City Maps | daily 每日運行 | @commons |
incubator:1 | 爲閩東語維基新聞自動添加每日報章頭條 | 停止運行 | 以一般用戶身分運行 @Wikimedia Incubator |
moegirl 2 | 幫忙補簽名 | 由星海-adminbot代 continuous 持續運行 |
@萌娘百科 |
v:1 (+bot) | 更新討論頁面主題列表+補簽名+沙盒清理 | continuous 持續運行 | @維基學院 |
19 | 自動更新 zhwiki 首頁特色內容、優良條目 | daily 每日運行 «停止» | 除修正頁面、更新列表外, 以一般用戶身分運行 |
c:6 | Cleaning over-categorization 清理過度分類 | regularly 定期運行 | @commons running regularly |
c:7 | Automatically uploading hurricane track maps | daily 每日運行 | @commons |
20 | BOTREQ: 清理Category:公司信息框使用額外地區代碼參數的頁面 | weekly 每週運行 «停止» | |
c:8, + | Generate topic list for discussion pages | continuous 持續運行 | @commons |
21 | 維護討論頁之存廢討論紀錄與模板 {{Old vfd multi}} | regularly 定期運行 «停止» | |
22 | 更新Wikipedia:資料庫報告頁面 | regularly 定期運行 | |
en:2 | Updating the section counts and article assessment icons for all levels of Wikipedia:Vital articles. |
daily 每日運行 | @enwiki |
en:3 | Maintaining the template {{Vital article}} in the talk pages. | daily 每日運行 | @enwiki |
en:4 | To inform of the article's PROD eligibility. | daily 每日運行 | @enwiki |
moegirl 3 | 更新討論頁面主題列表 | 由星海-adminbot代 continuous 持續運行 |
@萌娘百科
測試程式碼能否正常運作 |
en:5 | Normalizing {{Multiple issues}} | weekly 每週運行 | @enwiki |
23 | 修正失效的章節標題 Fixing broken anchors | continuous 持續運行 «停止» | |
en:6 | 修正失效的章節標題 Fixing broken anchors | continuous 持續運行 | @enwiki |
ja:4 | 壊れたアンカーの修正 Fixing broken anchors | continuous 常時稼働中 | @jawiki |
simple:1 | fixing broken anchors, adding {{Unsigned}}, and {{Article issues}}. | continuous 持續運行 | @simplewiki |
moegirl 4 | 修正失效的章節標題 Fixing broken anchors | 由星海-adminbot代 continuous 持續運行 |
@萌娘百科 |
en:7 | Sorting category of Thai names | weekly 每週運行 | @enwiki |
24 | 調整頁面的字詞轉換規則 | weekly 每週運行 «停止» | |
25 | 正規化日期格式、清理引文模組未知參數 | weekly 每週運行 «停止» | |
c:userland | Notify new files in category. | daily 每日運行 | @commons userland |
en:8 | Maintaining challenge templates on corresponding pages. | daily 每日運行 | @enwiki |
en:9 | Updating all levels of Wikipedia:Vital people. | no consensus | @enwiki |
ja: | 諸言語版のFA及びGA、FLの更新 | weekly 每週運行 | @jawiki |
26 | 強化 維基百科:其他語言的維基百科典範條目 | weekly 每週運行 | |
ks:1 | Normalizing {{Multiple issues}} | weekly 每週運行 | @kswiki |
wikt:1 | 目錄列表、補簽名、修正錯誤錨點之類 | continuous 持續運行 | @zhwiktionary 順便處理機械人請求 |
en:10 | Create lists for w:en:Wikipedia:Featured articles in other languages and for GA, FL | weekly 每週運行 | @enwiki |
n:9 | 同步通用頁面 | regularly 定期運行 | @wikinews |
wikt:2 | 自動存檔機制+同步通用頁面 | daily 每日運行 | @zhwiktionary 順便處理機械人請求 |
d:4 | Import new articles from online recsources. | regularly 定期運行 | @wikidata |
b:1 | topic list、補簽名、存檔、修正錯誤錨點、清理沙盒之類 | regularly 定期運行 | @zh.wikibooks |
n:10 | 創建每日/每月新聞摘要頁面+分類 | regularly 定期運行 | @wikinews |
en:11 | Generate topic list for discussion pages | continuous | @enwiki |
de:1 | Fixing broken anchors | continuous | @dewiki |
simple:2 | Convert interlanguage link templates with local article to wikilinks. | weekly 每週運行 | @simplewiki |
n:11 | 清理重定向的分類 | regularly 定期運行 | @wikinews |
27 | 清理重定向的分類 | weekly 每週運行 | |
28 | 清理導航模板的重導向內部連結,轉換模板中的內部連結為目標頁面標題。 | weekly 每週運行 | |
en:12 | Maintain {{WikiProject banner shell}} | regularly 定期運行 | @enwiki |
29 | 維護 {{WikiProject banner shell}} | regularly 定期運行 | |
30 | 修正拼寫錯誤連結 | weekly 每週運行 |
申請中作業
[編輯]正在處理...目前正審批(請求bot權限中)之作業
運行中作業
[編輯]TODO: w:en:Template:Log, w:en:Template:ToDo
提報關注度不足過期提醒
[編輯]- 利用
{{Notability-talk}}
將提交到通用關注度分類下的、列入超過30天的頁面的用戶討論頁上留言,詢問是否需要提刪。 «停止»
- 若您不想接受關注度提醒,請利用
{{bots|optout=afd}}
模板。或利用{{Personal announcement}}
模板之類,在您的用戶討論頁中加入如下列之提醒:「請勿在討論頁中放入關注度訊息」。 - 長期性作業,將定期運行。編輯頻率:每天一次。
- bot 運作記錄: User:cewbot/log/20150503
- TODO:
{{bots|optout=np}}
- 已批准。
拆分或合併維護模板
[編輯]- 長期性作業,將會定期運行或不定期手動執行。編輯頻率:每月或每周一次。
- 設定參數: User:Cewbot/規範多個問題模板設定
- bot 運作記錄: User:cewbot/log/20150916
- 已批准。
修復維基百科語法錯誤
[編輯]- 長期性作業,將會定期運行或不定期手動執行。編輯頻率:每月或每周一次。
- bot 運作記錄: User:cewbot/log/20151002
- 多項已批准。
將跨語言連結模板轉為內部連結
[編輯]- 長期性作業,將會定期運行。編輯頻率:每周一次。
- 已批准。
- GitHub上的原始碼 (source code)
幫忙補簽名
[編輯]- 幫忙補簽名«停止»
- 長期性作業,將會持續運行。
- bot 運作記錄: User:Cewbot/log/20170515
- 已批准。
- GitHub上的原始碼 (source code)
- 您可於特定頁面加入
{{Bots|optout=SIGN}}
來避免機械人添加簽名標記。 - 您可在您的用戶頁或您的用戶討論頁加入
{{NoAutosign}}
來避免機械人為您自動補簽名。 - 若您只是暫存,請在編輯註解加上"暫存"字樣即可避免補簽名。若您希望自行手動補簽名,請逕行修改即可。
增加討論頁面主題列表
[編輯]- 增加討論頁面 topic list 主題列表«停止»
- 長期性作業,將會持續運行。
- 設定參數: User:Cewbot/討論頁面主題列表設定
- 已批准。
- GitHub上的原始碼 (source code)
自動更新首頁特色內容
[編輯]- 長期性作業,以一般用戶身分運行。編輯頻率:對於明天以及後天的特色內容與優良條目,每天2次。«停止»
- Wikipedia:首頁/特色內容展示設定、Wikipedia:首頁/特色內容展示報告、Wikipedia:首頁/優良條目展示報告。
- GitHub上的原始碼 (source code)
- 已批准。
清理Category:公司信息框使用額外地區代碼參數的頁面
[編輯]- 用途:BOTREQ:清理Category:公司信息框使用額外地區代碼參數的頁面
- GitHub上的原始碼 (source code)
- 長期性作業,將會持續運行。
- 已批准。
Fix broken anchor
[編輯]- Configuration: User:Cewbot/log/20201008/configuration
- GitHub上的Source code
- The bot also notify broken anchors in the talk page via {{Broken anchors}}.
- 已批准。
- I don't want the bot to modify my archives!
- Please using
{{bots|optout=anchor-fixing}}
, the bot will skip this page.
已完成或結束作業
[編輯]已結案: 完成、 已完成、停止作業(任務型),請協助檢查錯誤。
添加規範控制模板
[編輯]- 轉移 en wiki 之規範控制 (Authority control) 模板。
- bot 運作記錄: User:cewbot/log/20150109
- Wikidata:WikiProject Authority control/Status
- 規範控制模板使用數目: 461277
- 已批准。
修正配音誤用模板
[編輯]- 正規化角色介紹,修正配音誤用已解決
{{Language icon}}
。
- bot 運作記錄: User:cewbot/log/20150227
- 已批准。
修正錯別字:錢鍾→錢鍾
[編輯]- 已修復 钱钟→钱锺
- bot 運作記錄: User:cewbot/log/20150210
- 本例已批准。
替換臺鐵圖徽為SVG版本
[編輯]- 將臺鐵圖徽TRA_Logo.png替換為SVG版本File:TRA Logo.svg,以利後續將PNG版本刪除。
- bot 運作記錄: User:cewbot/log/20150103
- 已批准。
添加維基文庫中提及本年的原始文獻連結
[編輯]- 對前699年–1910年批量添加{{wikisource year mention}}
- GitHub上的原始碼 (source code)
未批准作業
[編輯]不合要求、 駁回、 擱置作業、 不可行、 不建議機械人處理(建議手動修改)、撤回請求
修正不適宜用詞:相關詞條
[編輯]相关词条→相關條目
bot 運作記錄: User:cewbot/log/20150120沒有必要。
撤回請求作業
已取消作業
機械人製作軟件架構
[編輯]Cewbot 採用了包含製作機械人功能的 JavaScript 軟件架構,可離線開發和運行。
- framework: wikiapi / CeJS MediaWiki 自動化作業用的程式庫
- 可執行環境: node.js, JScript
- 採用 CeJS 函式庫來製作維基百科機械人的範例
Screenshot when fixing WPCHECK
The User agent is CeJS/2.0 (https://github.com/kanasimi/CeJS)
when it's running under node.js.
API 功能使用狀況
在 Wikimedia Toolforge 配置 node.js 任務的注意事項
[編輯]- Wikimedia Toolforge 採用的是 node v0.10.25, npm 1.3.10。
- 檢查好函式庫路徑。跑 crontab 或以 jsub 執行時,自行以 npm 安裝的 package 可能無效。得不依賴工作目錄才行。
- 把配置記憶體增大。node.js 會因為記憶體不夠大而 crash。
- 可以直接在 command 下
/usr/bin/jsub -N cron-tools.cewbot-1 -mem 1g -once -quiet __work__
測試。
- Wikimedia Toolforge 上之資料庫僅為正式上線版之刪節副本。資料並非最新版本(但誤差多於數分內),也不完全。
- ref. mw:Toolserver:Servers IP: w:en:Wikipedia:Blocking IP addresses#Sensitive for other reasons (91.198.174.0/24, 185.15.56.0/22, 198.35.26.0/23, 208.80.152.0/22), mw:Toolserver:Admin:DNS, mw:Meza/Install on Wikimedia Cloud VPS instance (172.16.0.0/16)
機械人常用關聯資料
[編輯]- Cewbot status
- 機械人編輯紀錄 跨語言活動 Global user contributions
- 全域帳號資訊 SUL
- Global latest edit XTools WikiChecker
- API feature usage 功能使用狀況
- Sub pages 機械人所有子頁面
- toolsadmin k8s-status
- toollabs:cewbot web page
tool |
---|
cewbot |
signature-checker |
toc |
anchor-corrector |
(mgp-cewbot) @ zh.moegirl |
- 機械人 status
- 29個機械人清單, 使用者權限級別, 使用者群組權限一覽
- 機械人操作列表 (bot activity by last edit)
- List of bots by editcount List of bots by editcount (wikidata) zh.wikiscan
- 維基百科數據 漢語
- Debian Stretch grid status, Project: Tools Wikimedia Toolforge Tools 對外出口IP 185.15.56.0/24 (ask from IRC, not wikitech:News/CloudVPS NAT wikis)
- 維基媒體集群負載/內存狀態概述 wikidata edits
- Edit summary search
- Icons
- Boards
- Development information
- Test pages and sites
- Sandbox: 沙盒 模板測試沙盒 模板沙盒 Module測試沙盒 (Module:沙盒) API沙盒 Flow測試頁面
- testwiki: test2wiki: testwikidata: zh Beta Cluster en Beta Cluster
- misc