پرش به محتوا

ویکی‌پدیا:درخواست‌های ربات/انتقال رده بر پایه فهرست

از ویکی‌پدیا، دانشنامهٔ آزاد

این کد برای انتقال رده‌های زیاد به نام جدید کاربرد دارد به عنوان مثال قصد داریم ۲۰ رده را به نام جدید انتقال دهیم.

روش کار

[ویرایش]

برای کار کردن با این ربات باید فایل متنی‌ای با نام movecatlist.txt به صورت UTF-8 بسازیم و در کنار ربات قرار دهیم نام رده‌ها را بدون پیشوند رده در فایل بنویسیم برای این کار می‌توان از نرم‌افزار اکسل استفاده کرد.

نام‌قدیم۱|نام‌جدید۱
نام‌قدیم۲|نام‌جدید۲
نام‌قدیم۳|نام‌جدید۳
نام‌قدیم۴|نام‌جدید۴
نام‌قدیم۵|نام‌جدید۵

به صورتی که نام قدیم و جدید در یک خط باشند و به وسیلهٔ | از همدیگر جدا شده باشند.

مثال:
احزاب آمریکا|احزاب ایالات متحده آمریکا
حزب‌های سیاسی افغانستان|احزاب افغانستان
حزب‌های سیاسی ایران|احزاب ایران

که این ربات رده:احزاب آمریکا را به رده:احزاب ایالات متحده آمریکا انتقال می دهد.

#!/usr/bin/python
# -*- coding: utf-8  -*-
#
# Reza(User:reza1615), 2011
#
# Distributed under the terms of the CC-BY-SA 3.0 .
import catlib ,pagegenerators
import category,codecs
import wikipedia
msg=u'ربات انتقال %s به %s'
def main():
    text2 = codecs.open( 'movecatlist.txt','r' ,'utf8' )
    text = text2.read()
    text=text.replace(u'\r',u'').strip() 
    for line in text.split(u'\n'):
       wikipedia.output(line)
       oldcat=line.split(u'|')[0]
       newcat=line.split(u'|')[1]
       category.CategoryMoveRobot(oldcat,newcat,msg %(oldcat,newcat)).run()
    
if __name__ == "__main__":
    try:
        main()
    finally:
        wikipedia.stopme()