維基百科:機械人/申請/Cewbot/8
外觀
- 狀態: 已批准
- 操作者: Kanashimi(留言)
- 提請時間: 2015年10月2日 (五) 16:57 (UTC)
- 程式語言:JavaScript。
- 用途:修復維基百科內容的語法錯誤。
- 討論內容連結: 維基百科:錯誤檢查專題。
- 編輯時段及頻率:每分鐘最多自動編輯10次。
- 受影響頁面:[1]
- 遵守機械人規範:是。
- 於其它語言所獲權限:無。
測試運作記錄/範例:User:cewbot/log/20151002,歡迎提供各種特殊情況以作測試,並請協助檢查錯誤。 --Kanashimi(留言) 2015年10月2日 (五) 16:57 (UTC)
- Checkwiki範圍太大了,請具體列出意圖修復的錯誤類型。--Jimmy Xu 論 2016年2月1日 (一) 08:01 (UTC)
- 謝謝回應。本次作業預計先從能安全辨識並修正的Priority:high開始,再往middle移動。當前準備先處理的,有 #2,5,8,10,13,29,80,102等。--Kanashimi(留言) 2016年2月1日 (一) 08:31 (UTC)
- 各給點樣例吧。而且剛隨便看了看,比如80的16個夏天,這個外部連結就是故意寫成這樣的,能處理麼?--Jimmy Xu 論 2016年2月1日 (一) 08:39 (UTC)
- 樣例請參考 User:Cewbot/log/20151002,這邊會再添加些。像是16個夏天,會因為找不到合適的 "]]",最後跳過,顯示成"尚留有需要人工判別之..."之類。--Kanashimi(留言) 2016年2月1日 (一) 09:12 (UTC)
- 看log感覺還是跑一跑就能碰到問題及需要回退。之前這種bot跟改錯別字的一樣社群都不太喜歡來着,感覺能接受的就是所有編輯都人工檢查一遍再提交。要麼你調整滿意了再跑一百次編輯看看吧。--[[User:::::::|Jimmy Xu]] 論 2016年2月1日 (一) 23:15 (UTC)
- OK. 待完成再回報。--Kanashimi(留言) 2016年2月2日 (二) 00:10 (UTC)
- Done. 基本上這邊僅處理確認屬於本次任務之 pattern。對於無法解析或有問題者,跳過不處理之。採取的是寧可漏判 (false negative) 也不誤判 (false positive)。因此較不需要擔心。想順便請教一下現在最大延遲參數怎麼設的,雖然這邊設定5秒,但還是會遇上 lost token?--Kanashimi(留言) 2016年2月2日 (二) 02:02 (UTC)
- 再快一點的話就會lost token,建議可以放慢速度。--Engle躍【✉✈㍿♛№】丙申年快到了,釋放幸福吧! 2016年2月2日 (二) 02:05 (UTC)
- 這邊的困惑是因為網絡延遲,實際呼叫一定大於 5 s,所以照理應該總是符合最大延遲參數。假如不是最大延遲參數的問題,恐怕就是其他地方得做調整了。之前只在連續幾天跑User:cewbot/log/20150109時遇過這樣的問題,但那時是量大。這次只跑到100頁就出問題了。--Kanashimi(留言) 2016年2月2日 (二) 02:21 (UTC)
- 這種不影響解析的不要專門去修,如果這頁有換行的順便改改就好,沒有的直接跳過吧。還有這一撥為什麼只有80,你還想搞啥都跑10個看看吧。API的問題來IRC,有點不知道你在說什麼……--Jimmy Xu 論 2016年2月2日 (二) 03:35 (UTC)
- @Kanashimi:lost的是csrf token還是user token?--Antigng(留言) 2016年2月2日 (二) 08:21 (UTC)
- @Jimmy Xu: 不影響解析的不要專門去修,如果這頁有換行的順便改改就好: OK. @Antigng: csrf吧。
- @Kanashimi:lost的是csrf token還是user token?--Antigng(留言) 2016年2月2日 (二) 08:21 (UTC)
- 再快一點的話就會lost token,建議可以放慢速度。--Engle躍【✉✈㍿♛№】丙申年快到了,釋放幸福吧! 2016年2月2日 (二) 02:05 (UTC)
- 看log感覺還是跑一跑就能碰到問題及需要回退。之前這種bot跟改錯別字的一樣社群都不太喜歡來着,感覺能接受的就是所有編輯都人工檢查一遍再提交。要麼你調整滿意了再跑一百次編輯看看吧。--[[User:::::::|Jimmy Xu]] 論 2016年2月1日 (一) 23:15 (UTC)
- 樣例請參考 User:Cewbot/log/20151002,這邊會再添加些。像是16個夏天,會因為找不到合適的 "]]",最後跳過,顯示成"尚留有需要人工判別之..."之類。--Kanashimi(留言) 2016年2月1日 (一) 09:12 (UTC)
- 各給點樣例吧。而且剛隨便看了看,比如80的16個夏天,這個外部連結就是故意寫成這樣的,能處理麼?--Jimmy Xu 論 2016年2月1日 (一) 08:39 (UTC)
- 謝謝回應。本次作業預計先從能安全辨識並修正的Priority:high開始,再往middle移動。當前準備先處理的,有 #2,5,8,10,13,29,80,102等。--Kanashimi(留言) 2016年2月1日 (一) 08:31 (UTC)
log: 連續4次都是: wiki_API.edit: Error to edit ....: [badtoken] Invalid token wiki_API.prototype.next: It seems we lost the token. wiki_API.prototype.next: No password to get token again. About.
- 不確定與Tech News: 2016-05有無關係。
“ | 部分用戶在1月22日出現登錄和退出困難。機械人同樣遭遇這一問題,並且編輯預覽不能正常工作。這是由於與會話管理器(SessionManager)組件相關的問題導致的。它已於1月23日回退,並在上周取消部署。 | ” |
- 之後改成 5010 ms,準備看看結果。 --Kanashimi(留言) 2016年2月2日 (二) 08:36 (UTC)
- @Kanashimi:,發現csrf token過期時你有沒有檢查過user token/session是否過期呢?--Antigng(留言) 2016年2月2日 (二) 08:40 (UTC)
- 沒debug,就沒注意了。但login兩三分鐘內,應該不至於過期。--Kanashimi(留言) 2016年2月2日 (二) 08:46 (UTC)
- edittoken每次edit之前都新拿一個,不要像之前那樣拿一次編輯幾十條。--Jimmy Xu 論 2016年2月2日 (二) 08:52 (UTC)
- 沒debug,就沒注意了。但login兩三分鐘內,應該不至於過期。--Kanashimi(留言) 2016年2月2日 (二) 08:46 (UTC)
- @Kanashimi:,發現csrf token過期時你有沒有檢查過user token/session是否過期呢?--Antigng(留言) 2016年2月2日 (二) 08:40 (UTC)
- 之後改成 5010 ms,準備看看結果。 --Kanashimi(留言) 2016年2月2日 (二) 08:36 (UTC)
- 您的意思是重跑一次 action=query&meta=tokens 嗎?--Kanashimi(留言) 2016年2月2日 (二) 09:04 (UTC)
- 是。--Jimmy Xu 論 2016年2月2日 (二) 09:08 (UTC)
- 機械軟件總覺得好像被強迫更新了。重抓token吧!--Engle躍【✉✈㍿♛№】丙申年快到了,釋放幸福吧! 2016年2月2日 (二) 09:10 (UTC)
- OK. I'll try. @Jimmy Xu: 您在編輯時是否有經過重整程式呢,例如{{反縮排}}會轉成{{od}}。--Kanashimi(留言) 2016年2月2日 (二) 09:12 (UTC)
- 我的第一個任務(User:Antigng-bot/checkredirect)是取一個edittoken做一次編輯。後來為了提高編輯速度做了多線程的支持,用一個單獨的線程獲取csrf token,如果某一個線程提交編輯以後發現invalid token就把該線程喚醒,重新跑一次action=query&meta=tokens。之前csrf token過期的速度不是確定的,做User:Antigng-bot/fix的時候一小時都沒過期,有的時候十幾分鐘就過期了。但如果現在由於種種原因編輯不足100次就一定會過期,那我什麼事情都做不了了。--Antigng(留言) 2016年2月2日 (二) 09:18 (UTC)
- 本來就不是給你這麼用的。--Jimmy Xu 論 2016年2月2日 (二) 09:19 (UTC)
- 怎麼用?--Antigng(留言) 2016年2月2日 (二) 09:27 (UTC)
- 合同里從來沒說過會什麼時候過期啊,所以依賴這個過期時間的行為肯定不靠譜啊。--Jimmy Xu 論 2016年2月2日 (二) 09:32 (UTC)
- 我說的「事情都做不了」指效率比現在低,不是程序會死。--Antigng(留言) 2016年2月2日 (二) 09:36 (UTC)
- 本來bot的編輯頻率也不要那麼高。--Jimmy Xu 論 2016年2月2日 (二) 09:39 (UTC)
- 我說的「事情都做不了」指效率比現在低,不是程序會死。--Antigng(留言) 2016年2月2日 (二) 09:36 (UTC)
- 合同里從來沒說過會什麼時候過期啊,所以依賴這個過期時間的行為肯定不靠譜啊。--Jimmy Xu 論 2016年2月2日 (二) 09:32 (UTC)
- 怎麼用?--Antigng(留言) 2016年2月2日 (二) 09:27 (UTC)
- 本來就不是給你這麼用的。--Jimmy Xu 論 2016年2月2日 (二) 09:19 (UTC)
- 我的第一個任務(User:Antigng-bot/checkredirect)是取一個edittoken做一次編輯。後來為了提高編輯速度做了多線程的支持,用一個單獨的線程獲取csrf token,如果某一個線程提交編輯以後發現invalid token就把該線程喚醒,重新跑一次action=query&meta=tokens。之前csrf token過期的速度不是確定的,做User:Antigng-bot/fix的時候一小時都沒過期,有的時候十幾分鐘就過期了。但如果現在由於種種原因編輯不足100次就一定會過期,那我什麼事情都做不了了。--Antigng(留言) 2016年2月2日 (二) 09:18 (UTC)
- @小躍:"機械軟件總覺得好像被強迫更新了" 您的意思是因為這次MediaWiki 系統更新嗎?--Kanashimi(留言) 2016年2月2日 (二) 09:20 (UTC)
- 對,所以吉米請你重抓。--Engle躍【✉✈㍿♛№】丙申年快到了,釋放幸福吧! 2016年2月2日 (二) 09:22 (UTC)
- phab:T124440會不時地讓用戶登出,不知道和閣下觀察到的現象有沒有關係。--Antigng(留言) 2016年2月2日 (二) 09:24 (UTC)
- 對,所以吉米請你重抓。--Engle躍【✉✈㍿♛№】丙申年快到了,釋放幸福吧! 2016年2月2日 (二) 09:22 (UTC)
- 是。--Jimmy Xu 論 2016年2月2日 (二) 09:08 (UTC)
- @Jimmy Xu: 已做了些測試,麻煩再看一下。--Kanashimi(留言) 2016年2月2日 (二) 12:00 (UTC)
2: 包含不正確的<br /> 5: HTML注釋未首尾對應 8: 章節標題未以「=」結尾 10: 連結方括號未對應 13: 數學 tag 未首尾對應 15: 代碼 tag 未首尾對應 14: 源代碼 tag 未首尾對應 23: nowiki tag 未首尾對應 24: pre tag 未首尾對應 29: 圖片集 tag 未首尾對應 80: 外部連結中起新行或含有不必要的空格 102: PMID語法錯誤 若全無變更,則預設僅從 console 提示,不寫入 log 頁面。因此無變更者將不顯示。
- 關於登出的問題,看來恐需要連 HTTP handler 都重換一個,重起 cookie。--Kanashimi(留言) 2016年2月3日 (三) 00:17 (UTC)
- 2寫
</br>
的不影響渲染,不要專門去修。雙哈恩多項式這是在幹啥,而且多幾個空格也不是問題。這個可以更靈活點。本來就太亂的不要垃圾進垃圾出。--Jimmy Xu 論 2016年2月3日 (三) 00:57 (UTC)- 感謝幫忙糾錯。除了
</br>
外已修改。關於</br>
,由於留着的話還是會被列在list,我想還是改改好了。--Kanashimi(留言) 2016年2月3日 (三) 06:01 (UTC)- 列在那兒不是製造無意義編輯的理由,別看就是了……看到測試編輯的這些應該問題不大,其他的想放開跑的話拿diff來吧。--Jimmy Xu 論 2016年2月3日 (三) 07:06 (UTC)
- 感謝幫忙糾錯。除了
- 10、80、102已批准。--Jimmy Xu 論 2016年2月3日 (三) 07:06 (UTC)