用户:Dingar-bot
此为机器人账号,操作者为dingar(讨论),属合规附属账户,以半自动或全自动方式协助用户处理繁琐而重复的工作。此机器人并未获得社群批准运作,或其操作许可已被撤销,是故不应进行大规模操作,亦请勿在缺乏操作者监察下运作,操作者及机器人用户空间除外。 管理员︰若然此机器人进行大规模操作或相信在缺乏监察下运作,而且所编辑区域并非操作者或机器人用户名字空间,请施予封禁。 |
本机器人主要执行以下任务。
行政区划分类
使用Category.py进行操作,示例代码如下:
python category.py move -from:"泉州" -to:"惠安县行政区划" -match:"惠安县\)""
自动创建乡级行政区
使用pagefromfile.py进行操作,运行环境为Ubuntu Linux+Python。步骤如下:
- 手动创建data文件。
- 运行township.sh。
- 检查生成条目的结果。
wikicounty目录
镇名\t消歧义选项(0为没有消歧义)\t行政区划代码\t行政区划数\t下辖行政村列表\t所属县
其中\t指TAB键。
data文件示例
浔中镇 0 350526100 2个[[社区]]、11个[[行政村]] 凤池社区、富东社区、浔中村、乐陶村、后所村、凤洋村、龙翰村、石鼓村、仙境村、祖厝村、石山村、蒲坂村、世科村 德化县 龙浔镇 0 350526101 8个[[社区]]、6个[[行政村]] 浔东社区、德新社区、兴南社区、南门社区、金锁社区、龙鹏社区、湖前社区、园丁社区、宝美村、丁溪村、丁墘村、大坂村、英山村、高阳村 德化县 三班镇 0 350526102 10个[[行政村]] 三班村、泗滨村、东山村、奎斗村、儒坑村、锦山村、龙阙村、桥内村、蔡径村、岭头村 德化县 龙门滩镇 0 350526103 12个[[行政村]] 硕儒村、霞碧村、碧坑村、苏洋村、磻坑村、石室村、湖景村、内洋村、村兜村、朱地村、霞山村、大溪村 德化县 雷峰镇 0 350526104 14个[[行政村]] 朱紫村、蕉溪村、潘祠村、坂仔村、雷峰村、格后村、溪美村、肖坑村、长基村、瑞坂村、李溪村、荐解村、上寨村、双芹村 德化县 南埕镇 0 350526105 12个[[行政村]] 西山村、高漈村、前峰村、半岭村、南埕村、塔兜村、枣坑村、许厝村、望洋村、连山村、蟠龙村、梓垵村 德化县 水口镇 (德化县) 350526106 16个[[行政村]] 亭坑村、丘坂村、凤坪村、上湖村、久住村、祥光村、八逞村、樟境村、村场村、湖坂村、淳湖村、毛厝村、昆坂村、梨坑村、承泽村、榜上村 德化县 赤水镇 (德化县) 350526107 1个[[社区]]、14个[[行政村]] 赤水社区、戴云村、东里村、苏坂村、猛虎村、湖岭村、岭边村、福全村、吉岭村、永嘉村、苏岭村、西洋村、锦洋村、小铭村、铭爱村 德化县 葛坑镇 0 350526109 12个[[行政村]] 葛坑村、下玲村、湖头村、漈头村、邱村村、水门村、大岭村、蓝田村、富地村、大正村、龙漈村、龙塔村 德化县 上涌镇 0 350526108 17个[[行政村]] 上涌村、黄井村、辉阳村、后坂村、后宅村、刘坑村、下涌村、曾坂村、云路村、西溪村、桂格村、传豪村、桂林村、中洋村、下村村、门头村、东山村 德化县 盖德乡 0 350526205 14个[[行政村]] 盖德村、下寮村、有济村、下坑村、福阳村、大墘村、上地村、吾华村、三福村、上坑村、林地村、仙岭村、凤山村、山坪村 德化县 杨梅乡 (德化县) 350526200 7个[[行政村]] 杨梅村、白叶村、西墘村、上云村、云溪村、安村村、和顺村 德化县 汤头乡 0 350526202 7个[[行政村]] 汤头村、草村村、福山村、格中村、岭脚村、汤垵村、吉山村 德化县 桂阳乡 0 350526204 9个[[行政村]] 桂阳村、溪洋村、王春村、安章村、涌溪村、洪田村、彭坑村、梓溪村、陈溪村 德化县 国宝乡 0 350526206 8个[[行政村]] 国宝村、佛岭村、上洋村、南斗村、祥云村、内坂村、厚德村、格头村 德化县 美湖乡 0 350526207 8个[[行政村]] 上岸村、小湖村、美湖村、上漈村、洋坑村、洋田村、斜山村、阳山村 德化县 大铭乡 0 350526208 7个[[行政村]] 大铭村、联春村、金黄村、上徐村、琼英村、琼山村、琼溪村 德化县 春美乡 0 350526209 7个[[行政村]] 古春村、梁春村、上春村、春美村、新阁村、尤床村、双翰村 德化县
generate_township_files.py
# -*- coding: utf-8 -*-
""" Script to create user files (user-config.py, user-fixes.py) """
__version__ = '$Id: generate_user_files.py 6869 2009-05-11 00:35:02Z cosoleto $'
import os, sys, codecs, re
base_dir = ''
console_encoding = sys.stdout.encoding
if console_encoding is None or sys.platform == 'cygwin':
console_encoding = "iso-8859-1"
def listchoice(clist = [], message = None, default = None):
if not message:
message = "Select"
if default:
message += " (default: %s)" % default
message += ": "
for n, i in enumerate(clist):
print ("%d: %s" % (n + 1, i))
while True:
choice = raw_input(message)
if choice == '' and default:
return default
try:
return clist[int(choice) - 1]
except:
print("Invalid response")
return response
def file_exists(filename):
if os.path.exists(filename):
print("'%s' already exists." % filename)
return True
return False
def generate_township():
_fnc = os.path.join(base_dir, "township")
if not file_exists(_fnc):
fdata = codecs.open("data", "r", "utf-8")
row=[]
for str in fdata.readlines():
column=[]
line=str.split()
for field in line: column.append(field)
row.append(column)
for data in row:
name=data[0]
if name.find(u"乡")<>-1: level=u"乡"
if name.find(u"镇")<>-1: level=u"镇"
if name.find(u"街道")<>-1: level=u"街道"
if data[1]<>"0": disam=' '+data[1]
else: disam=''
code=data[2]
post=''
num_villiage=data[3]
villiage=data[4]
county=data[5]
f = codecs.open(_fnc, "a", "utf-8")
f.write(u"""{{-start-}}
'''%s%s'''
{{中国乡级行政区
| 行政区全称 = %s
| 景观照片文件名 =
| 景观照片描述 =
| 汉语拼音 =
| 通用拼音 =
| 注音符號 =
| 其它标音类型1 =
| 其它标音1 =
| 其它标音类型2 =
| 其它标音2 =
| 其它语言类型1 =
| 其它语言地名1 =
| 其它语言类型2 =
| 其它语言地名2 =
| 上级行政区 = [[福建省]][[泉州市]][[%s]]
| 行政区类别 = [[%s]]
| 行政区划代码 =%s
| 地理坐标 =
| 总面积 =
| 户籍人口 =
| 户籍人口年份 =
| 常住人口 =
| 常住人口年份 =
| 人口密度 =
| 行政区划 =
| 官方网站 =
| 政府驻地 =
| 邮政编码 =%s
| 毗邻行政区 =
| 位置图文件名 =
| 位置图描述 =
}}
'''%s'''是[[中华人民共和国|中国]][[福建省]][[泉州市]][[%s]]下辖的一个[[%s]]。
== 行政区划 ==
%s共辖%s,分别是:
%s。
{{%s行政区划}}
{{福建小作品}}
[[Category:%s行政区划]]
{{-stop-}}
""" % (name, disam, name, county, level, code, post, name, county, level, name, num_villiage, villiage, county, county))
f.close()
fdata.close()
print("'%s' written." % _fnc)
if __name__ == "__main__":
generate_township()
pywikipedia目录
township.sh
cd /home/dingar/wikicounty/ python generate_township_files.py mv township ~/pywikipedia/ cd ~/pywikipedia/ gedit township python pagefromfile.py -file:township -summary:机器人新建行政区划小作品(试验) -notitle
注意
- Find: \s?~\d+
- Replace: 、