<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.tiffa.net/w/index.php?action=history&amp;feed=atom&amp;title=Mediawiki%E3%81%AE%E8%A8%AD%E5%AE%9A%2Fbot</id>
	<title>Mediawikiの設定/bot - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.tiffa.net/w/index.php?action=history&amp;feed=atom&amp;title=Mediawiki%E3%81%AE%E8%A8%AD%E5%AE%9A%2Fbot"/>
	<link rel="alternate" type="text/html" href="https://wiki.tiffa.net/w/index.php?title=Mediawiki%E3%81%AE%E8%A8%AD%E5%AE%9A/bot&amp;action=history"/>
	<updated>2026-05-19T19:27:35Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.tiffa.net/w/index.php?title=Mediawiki%E3%81%AE%E8%A8%AD%E5%AE%9A/bot&amp;diff=1075&amp;oldid=prev</id>
		<title>imported&gt;Fire at 14:05, 12 February 2021</title>
		<link rel="alternate" type="text/html" href="https://wiki.tiffa.net/w/index.php?title=Mediawiki%E3%81%AE%E8%A8%AD%E5%AE%9A/bot&amp;diff=1075&amp;oldid=prev"/>
		<updated>2021-02-12T14:05:26Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;投資データをいちいち調査して書き込むのがきっとめんどくさくなると思いボットを入れてみることにした&lt;br /&gt;
&lt;br /&gt;
意外にハマってしまったのでメモ&lt;br /&gt;
&lt;br /&gt;
== botのインストールの前段 ==&lt;br /&gt;
まず wiki でbot のアカウント作成。[[Special:利用者権限]]で、権限はbotをつける&lt;br /&gt;
&lt;br /&gt;
[[Special:BotPasswords]]でBot password を作成する([https://www.mediawiki.org/wiki/Manual:Pywikibot/BotPasswords ここ]を参照)&lt;br /&gt;
&lt;br /&gt;
user-password.pyを作成&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; width:auto; color:#FFFFFF; background-color:#000000; padding: .2em .6em; margin-bottom:10px; border: 1px solid #cee0f2;&amp;quot;&amp;gt;(&amp;#039;botname&amp;#039;, BotPassword(&amp;#039;my-botpassword-name&amp;#039;, &amp;#039;mysupersecretbotpassword&amp;#039;))&amp;lt;/div&amp;gt;{{clear}}&lt;br /&gt;
&lt;br /&gt;
botnameには、wikiで作成したbotアカウント名。my-botpassword-nameは、[[Special:BotPasswords]]で設定したパスワード。mysupersecretbotpasswordは、[[Special:BotPasswords]]で生成されたシークレットパスワードを設定&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; width:auto; color:#FFFFFF; background-color:#000000; padding: .2em .6em; margin-bottom:10px; border: 1px solid #cee0f2;&amp;quot;&amp;gt;chmod 666 user-password.py&amp;lt;/div&amp;gt;{{clear}}&lt;br /&gt;
&lt;br /&gt;
[https://meta.wikimedia.org/wiki/Bot ここ]を見てPythonが使えるbotが良さそうだったので[https://www.mediawiki.org/wiki/Manual:Pywikibot Pywikibot]を使うことにした。&lt;br /&gt;
&lt;br /&gt;
[https://www.mediawiki.org/wiki/Manual:Pywikibot/Installation このページ]をインストールを始めたが、&lt;br /&gt;
&lt;br /&gt;
python3 pwb.py generate_user_files の段階でエラーが..&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; width:auto; color:#FFFFFF; background-color:#000000; padding: .2em .6em; margin-bottom:10px; border: 1px solid #cee0f2;&amp;quot;&amp;gt;ModuleNotFoundError: No module named &amp;#039;_ctypes&amp;#039;&amp;lt;/div&amp;gt;{{clear}}&lt;br /&gt;
&lt;br /&gt;
ググっているとどうもlibffi-devel というライブラリが足りないらしい。レンタルサーバでroot持っておらず、パッケージインストールできなかったので、ソースからビルドする。&lt;br /&gt;
&lt;br /&gt;
[https://sourceware.org/libffi/ ここ]からソースファイルをダウンロードし、解凍後&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; width:auto; color:#FFFFFF; background-color:#000000; padding: .2em .6em; margin-bottom:10px; border: 1px solid #cee0f2;&amp;quot;&amp;gt;./configure --prefix=/home/xxxxxx/local&amp;lt;br/&amp;gt;make&amp;lt;br/&amp;gt;make install&amp;lt;/div&amp;gt;{{clear}}&lt;br /&gt;
&lt;br /&gt;
/home/xxxxxx/local/lib64 にライブラリが入っているので、/home/xxxxxx/local/lib にも各ライブラリのシンボリックリンクを貼っておいた&lt;br /&gt;
&lt;br /&gt;
ライブラリパスが通っている状態でPython を再度コンパイルしmakeで&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; width:auto; color:#FFFFFF; background-color:#000000; padding: .2em .6em; margin-bottom:10px; border: 1px solid #cee0f2;&amp;quot;&amp;gt;Failed to build these modules:&amp;lt;br/&amp;gt;_ctypes&amp;lt;/div&amp;gt;{{clear}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
というエラーが出ていなければctypes が組み込まれているので成功&lt;br /&gt;
&lt;br /&gt;
=== bot の設定 ===&lt;br /&gt;
&lt;br /&gt;
改めて&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; width:auto; color:#FFFFFF; background-color:#000000; padding: .2em .6em; margin-bottom:10px; border: 1px solid #cee0f2;&amp;quot;&amp;gt;python3 pwb.py generate_user_files&amp;lt;/div&amp;gt;{{clear}}&lt;br /&gt;
&lt;br /&gt;
いくつか質問聞かれたがよくわからない。自分で立ち上げたwikiはどれを選んだらよいのやら、、とりあえずwikipediaを選んで後から設定を変更することに。&lt;br /&gt;
&lt;br /&gt;
[https://www.mediawiki.org/wiki/Manual:Pywikibot/Use_on_third-party_wikis ここ]を参考に、user-config.pyを修正&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; width:auto; color:#FFFFFF; background-color:#000000; padding: .2em .6em; margin-bottom:10px; border: 1px solid #cee0f2;&amp;quot;&amp;gt;family = &amp;#039;sitename&amp;#039; →ここは、LocalSettings.php の$wgSitename の名前を設定&amp;lt;br/&amp;gt;&lt;br /&gt;
mylang = &amp;#039;ja&amp;#039; →ここも LocalSettings.php の $wgLanguageCode の値を設定(他のでも大丈夫な気がするが)&amp;lt;br/&amp;gt;&lt;br /&gt;
username[&amp;#039;sitename&amp;#039;][&amp;#039;ja&amp;#039;] = u&amp;#039;botname&amp;#039; →sitenameは、familyで設定した名称 botname はwikiで作成したbotアカウント名&amp;lt;br/&amp;gt;&lt;br /&gt;
password_file = &amp;quot;user-password.py&amp;quot; &amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;{{clear}}&lt;br /&gt;
&lt;br /&gt;
今度は、family file の設定&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; width:auto; color:#FFFFFF; background-color:#000000; padding: .2em .6em; margin-bottom:10px; border: 1px solid #cee0f2;&amp;quot;&amp;gt;python3 pwb.py generate_family_file&amp;lt;/div&amp;gt;{{clear}}&lt;br /&gt;
&lt;br /&gt;
Please insert URL to wiki: →URLを設定&amp;lt;br/&amp;gt;&lt;br /&gt;
Please insert a short name →sitenmaeを設定&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
pywikibot/families 配下に&amp;#039;sitename&amp;#039;-family.py を確認&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line=&amp;#039;line&amp;#039;&amp;gt;&lt;br /&gt;
class Family(family.Family):  # noqa: D101&lt;br /&gt;
&lt;br /&gt;
    name = &amp;#039;sitename&amp;#039; →自分のwiki のsitename&lt;br /&gt;
    langs = {&lt;br /&gt;
        &amp;#039;ja&amp;#039;: &amp;#039;URL&amp;#039;,  →自分のwiki のドメイン名&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    def scriptpath(self, code):&lt;br /&gt;
        return {&lt;br /&gt;
            &amp;#039;ja&amp;#039;: &amp;#039;/w&amp;#039;,&lt;br /&gt;
        }[code]&lt;br /&gt;
&lt;br /&gt;
    def protocol(self, code):&lt;br /&gt;
        return {&lt;br /&gt;
            &amp;#039;ja&amp;#039;: &amp;#039;https&amp;#039;,&lt;br /&gt;
        }[code]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; width:auto; color:#FFFFFF; background-color:#000000; padding: .2em .6em; margin-bottom:10px; border: 1px solid #cee0f2;&amp;quot;&amp;gt;python3 pwb.py login&amp;lt;/div&amp;gt;{{clear}}&lt;br /&gt;
&lt;br /&gt;
でログインできれば成功。ここまで来て疲れてスクリプト作成はまた今度。。&lt;br /&gt;
[[Category:Mediawiki]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Fire</name></author>
	</entry>
</feed>