首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Python更新媒体维基文章?

问使用Python更新媒体维基文章?
EN

Stack Overflow用户
提问于 2010-12-22 03:11:15
回答 3查看 2.7K关注 0票数 5

嗨,我有一个cron工作,收集有关服务的一些统计数据。我需要cron作业,以编程方式更新媒体维基页面(附加到页面)。我在cron上使用python,那么我最好的选择是什么,有没有mediawiki/python库的例子,或者Media wiki是否公开了我可以使用的HTTP/REST apis (可能是通过扩展)。

谢谢

EN

回答 3

Stack Overflow用户

发布于 2011-05-05 00:58:06

如果Python太重,可以尝试使用PyWikipediaBot模块mwclient。

您可以登录,查看页面的当前内容,进行更改,然后在少于10行的(example)中查看它。

代码语言:javascript
复制
import mwclient
site = mwclient.Site('en.wikipedia.org')
site.login('Pfctdayelise','password')
page = site.Pages['User:Pfctdayelise/Test']
text = page.edit()
print text.encode('utf-8')
newtext = "\n\nTesting the write api without logging in.\n"
page.save(text+newtext,summary='testing write api')
票数 4
EN

Stack Overflow用户

发布于 2018-07-04 12:07:14

如果在运行cron作业的同一台计算机上运行mediawiki,则可以使用maintanence目录中的edit.php脚本。

代码语言:javascript
复制
/bin/python /opt/page_renderer.py | php /var/www/mediawiki/maintenance/edit.php -b PageTitle

在这个例子中,/opt/page_renderer.py输出wiki markdown。这将通过管道传递到编辑脚本,该脚本具有-b标志(将其标记为机器人编辑)和您希望编辑的页面的标题。

当然,您可以通过管道从任何程序进入编辑脚本,如果您已将mediawiki安装在不同的位置,则可能需要更改编辑脚本的路径。

票数 1
EN

Stack Overflow用户

发布于 2021-10-27 10:41:52

作为提交者

https://github.com/WolfgangFahl/py-3rdparty-mediawiki我推荐这个库的命令行功能,它允许您直接从脚本处理标记。

该库与语义MediaWiki配合使用效果最好,您可以在其中查询感兴趣的页面:

代码语言:javascript
复制
$ wikibackup -s orth --backupPath "/home/user/wikibackup/orth_copy" -q "[[isA::Event]]" --limit 10


downloading 10 pages from orth to /home/user/wikibackup/orth_copy

1/10 (  10%): downloading " DBKDA 2021" ...✅
2/10 (  20%): downloading "ENERGY 2021" ...✅
3/10 (  30%): downloading "ICAS 2021" ...✅
4/10 (  40%): downloading "ICNS 2021" ...✅
5/10 (  50%): downloading 2021 ICIMP ...✅
6/10 (  60%): downloading 3DUI 2020 ...✅
7/10 (  70%): downloading 3IA 2009 ...✅
8/10 (  80%): downloading 3PGIC 2010 ...✅
9/10 (  90%): downloading 4S4D 2017 ...✅
10/10 ( 100%): downloading 5GU 2017 ...✅

修改标记后,您可以使用以下命令恢复页面:

代码语言:javascript
复制
wikirestore -t orth --backupPath "/home/user/wikibackup/orth_copy"

restoring 10 pages from /home/user/wikibackup/orth_copy to orth
1/10 (  10%): restore 2021 ICIMP ...✅
2/10 (  20%): restore "ICNS 2021" ...✅
3/10 (  30%): restore 3PGIC 2010 ...✅
4/10 (  40%): restore 4S4D 2017 ...✅
5/10 (  50%): restore "ENERGY 2021" ...✅
6/10 (  60%): restore 3DUI 2020 ...✅
7/10 (  70%): restore " DBKDA 2021" ...✅
8/10 (  80%): restore 3IA 2009 ...✅
9/10 (  90%): restore "ICAS 2021" ...✅
10/10 ( 100%): restore 5GU 2017 ...✅
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4502993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档