*** MediaWiki 管理者の集い  ***at PHP
*** MediaWiki 管理者の集い  *** - 暇つぶし2ch931:nobodyさん
07/06/03 22:22:32 t5XEkABz
上記の方法でphpMyAdminでSQLファイルを作って、上記のPHPで成功と出たんですけど、テーブルができないです。
telnetが使えるんですけど、直接コマンドラインでSQLファイルを流すにはどうしたらいいんでしょうか?


932:nobodyさん
07/06/03 22:24:00 cZymmGIk
URLリンク(members3.jcom.home.ne.jp)
コイツも信者もきめえ
いい加減さっさと閉鎖しろや


933:931
07/06/03 22:49:27
sourceコマンドでできました。

934:930
07/06/04 02:29:16
>>931
あ…
$file_array = file($file_name);
で1行1命令としちゃってるから
複数行にまたがってる
DROP TABLEやCREATE TABLE何かは
実行されないです。
入門ページ見ながら適当に作ったやつなのでw
すまんです

935:930
07/06/04 02:55:50
ついでにGoogle Webサービのサイトマップネタを
うちのWikiが全然全くGoogleにインデックスされないので
Google Sitemapに登録しようと思って探したら
Sarabandeさん所で良さげそうなのを発見して入れみたけど
URLリンク(sarabande.info)
配布元 URLリンク(www.thinklemon.com)
これ、日本語のタイトルページが????って文字化けすしちゃいます。のでちょっと修正
58行目辺りの
# Fetch the data from the DBの下辺りに
mysql_query("SET NAMES utf8", $connWikiDB) or die(mysql_error());
と書き加えると日本語表示するようになりました。
.htaccessのRewriteで
RewriteRule ^sitemap.xml$ /mediawiki/sitemap.xml.php [R=301,L]
とか入れておけばGoogleで読み込んでくれると思うです。

936:930
07/06/04 05:54:19
さらについでに、botネタpywikipediabotの使い方について
要注意!!私はプログラムとかサーバとかシステムとか全くの初心者レベルです
激しく間違ってる部分が多々あります!!!エロイ人居ましたらつっこんでください。
1. 先ずはPythonをインストール、2.5出てますが日本語な2.3.4でおkぽいす
 URLリンク(www.python.jp)
 環境変数にPATHを通しておけば、毎回Pythonフォルダ指定しなくて済むので設定しておいた方が良いかも URLリンク(wbs.nsf.tc)
2.pywikipediaをダウンロード
 URLリンク(meta.wikimedia.org)
 CVSでDLした方が後々アップデート楽ですが
 面倒ならZIPか.tar.gzをDLして適当な所、C:\直下とかに解凍
C:\Python23
C:\pywikipedia 
という風になってるものとして話を推し進めていきます。下記参考ページ
URLリンク(meta.wikimedia.org)
URLリンク(meta.wikimedia.org)
URLリンク(developer.mozilla.org)

937:930
07/06/04 05:55:29
pywikipediabotの続き2
pywikipediaを使用するには2つのファイルに設定をしないといけないです。
1、pywikipedia/families/サイト名_familiesという自分のWikiサイトに関する設定
2、pywikipedia/user-config.pyというファイルでユーザの設定です。
先ずはfamiliesから、自分のサイト名プロジェクト名を仮にMyProjectとして説明します。(デフォだとmediawikiかな)
familiesフォルダーの中に入っているmediawiki_family.pyってファイルをコピーしてmyproject__family.pyとリネーム、小文字じゃないとダメっぽい
UTF-8が使用できるテキストエディタなどで開きます。
'mediawiki' と書いてある2箇所を 'myproject' と(全部を小文字に書き換え)
'Project' を 'MyProject' と 'Project talk' を 'MyProject talk'と書き換え(ここは大文字使う)
'www.mediawiki.org' この部分は自分のWikiサイトのURLを入れます。
例えば自分のURLが 'URLリンク(hogehoge.yahoo.co.jp)' ならば'hogehoge.yahoo.co.jp' とします。
ここで注意:サブディレクトリを書き込むと'socket.gaierror:'とエラーでます。'.com' 'net' '.jp'などサードレベルドメインまでです。
サブディレクトリの指定は一番下に
def path(self, code):
return '/wiki/index.php'
などと付け足せば良いぽいです。後は適当な箇所は適当にversionとかを変更します。

938:930
07/06/04 05:58:52
def __init__(self):           ### こんな感じになるかと ###
family.Family.__init__(self)   ### 書き込み行が足りないのでclassの内部だけです。 ###
self.name = 'myproject'     ### 'myproject' は自分のサイトのプロジェクト名を(小文字)に変更 ###
self.langs = {
'myproject': 'hogehoge.yahoo.co.jp',           ### 'hogehoge.yahoo.co.jp'は自分のサイトのURL ###
}

self.namespaces[4] = {
'_default': [u'MyProject', self.namespaces[4]['_default']], ### ''MyProject''は自分のプロジェクト名に変更 ###
}
self.namespaces[5] = {
'_default': [u'MyProject talk', self.namespaces[5]['_default']],  ### ここも自分のプロジェクト名に変更 ###
}
def version(self, code):
return "1.9.3"           ### MediaWikiのバージョン ###
def path(self, code):
return '/wiki/index.php'     ### index.phpまでのディレクトリ/パス ###

939:930
07/06/04 05:59:33
pywikipediabotの続き4
次は、'user-config.py' の説明、\pywikipedia\config.py というファイルをコピーして \pywikipedia\user-config.py とリネームし中身を全部消す
もしくは新規にテキストエディタ等で \pywikipedia\user-config.py ファイルを作り

mylang = 'myproject'
family = 'myproject'
usernames['myproject']['myproject'] = u'UserName'
console_encoding = 'SJIS'

適当な箇所を書き換え
console_encoding = 'SJIS' はWindowsのコマンドプロンプトがSJISしか使えないのでSJISにしてますが
UTF-8が使えるプロンプトや最近のLinuxのシェルとかなら console_encoding = 'UTF8' にしてください
'UserName' はログイン用のユーザアカウント名に'myproject' は自分のサイトのプロジェクト名に変更してください。
そしてUTF-8にて保存します。

これで一通りの下準備と環境は整いました。

940:930
07/06/04 06:00:23
pywikipediabotの続き5
先ずは[スタート][すべてのプログラム][アクセサリ]の中に入っているコマンドプロンプトを起動
pywikipediaフォルダーまで移動
C:\Documents and Settings\UserName>cd c:\pywikipedia
ログイン用ファイルを実行します。(ブラウザ経由でのログインと同じで一回ログインすれば1日位はログインしっぱなしです)
C:\pywikipedia>python login.py
環境変数でpythonのPATHを通していなければ
C:\pywikipedia>C:\Python23\python login.py
と打ち込んで
Password for user UserName on myproject:myproject:
と聞いてきますのでパスワードを入れると
Logging in to myproject:myproject as UserName
Should be logged in now
と出ればログイン成功です。

エラーが出る様なら設定ファイルを見直してみてください。

941:930
07/06/04 06:01:29
pywikipediabotの続き6
試しに文字置き換え等をしてみます。
ブラウザでSandboxってページを作り内容を 'hoge {{help}}'と書き込み保存
置換は replace.py ファイルを使用します。
C:\pywikipedia>python replace.py -page:Sandbox -regex "hoge \{\{(.*?)\}\}" "MyProject [[\1]]"
ブラウザでSandboxを開いて編集で中身を見るか履歴を参照して、無事書き換えられたら成功です。
-page: はページ指定
-cat: はカテゴリー
-ref はページを参照しているリンク元ってやつ全部です。
-namespace:n は名前空間指定
-start は全ページ
で、ここまで説明しといてあれなんですが、この環境(Windowsに標準のコマンドプロンプト)だと
日本語及びUnicodeの検索や置換はできないっぽいです。(WindowsのコマンドプロンプトはSJISのみなので)
UTF8が使えるプロンプトを入れるとか、Cygwinとかを入れるか、最近のUTF8対応のLinuxとか入れちゃうとか
レンタルサーバに置いてCronで実行しちゃうとかすれば、日本語やUnicodeの検索置換はできるかもです。
pywikipediabotの説明終了です。

942:930
07/06/04 20:43:58
間違いと訂正 >>937 >>938 にて小文字で云々と連呼してますが嘘です。大文字でもOKです。
langはjaの方が良いかも?なので訂正を

xxxxxx_family.pyファイルのファイル名も大文字とかでOKす。
myproject__family.py >>> MyProject__family.py

family.pyの設定内容は
self.name = 'myproject' >>> self.name = 'MyProject'
self.langs = {'myproject': 'hogehoge.yahoo.co.jp',  >>>  self.langs = {'ja': 'hogehoge.yahoo.co.jp',

user-config.pyの設定内容も
mylang = 'myproject'  >>>  mylang = 'ja'
family = 'myproject'  >>>  family = 'MyProject'
usernames['myproject']['myproject'] = u'UserName'  >>>  usernames['MyProject']['ja'] = u'UserName'

u'UserName' u'hoge' u"hoge" など先頭に u とは次の文字列がUnicodeであるという接頭語なので、日本語ユーザ名でもOkです。

943:nobodyさん
07/06/04 22:36:45 4Nbedgdh
(1)特別:Export でXMLを出力 ⇒ (2)エディタで修正 ⇒ (3)特別:Import をしたとき、

(2)でカテゴリを書き換えると、実際のCategory:ナントカ の方に反映されないんですが、
何か一発で反映させる方法はないでしょうか?


944:nobodyさん
07/06/04 22:47:18
./maintenance/refreshLinks.php を実行するか、空編集をして回る。

945:nobodyさん
07/06/04 22:53:08
ありがとうございます!!

maintenance配下のコマンドの説明一覧みたいなのってどこにありますか?


946:nobodyさん
07/06/04 23:01:55
URLリンク(meta.wikimedia.org)
かmaintenance/READMEあたりかな。

maintenance以下のファイルを実際に見てみるのが一番いいと思うけど。
ファイル名からだいたい推測できると思うし。

947:nobodyさん
07/06/05 11:31:56 p4EFLF7/
Wikipedia専用みたいだけど、ソース公開してくれないかな?

WikiTool
URLリンク(beyond.2log.net)


948:nobodyさん
07/06/06 01:35:04
あまり意味ないと思うけど・・・

949:nobodyさん
07/06/06 01:40:01 2S+gWUv5
[この項目をパトロール済みにする]って、放っておくと何か問題ありますか?

950:nobodyさん
07/06/06 07:00:58
べつに

951:nobodyさん
07/06/06 09:03:22
>>949さん
パトロールは古いバージョンでがんばろうとした機能のような気がしてますですよ。
新しいバージョンでは徐々に存在が薄れて、今となっては一般ユーザーには特に
意識されない機能になってしまった…といったところじゃないでしょうか。
管理者 "sysop" にとってのフラグ程度の存在といいますか… ちと寂しいですね (´・ω・‘)

In MediaWiki 1.9
this user preference has been removed and replaced by a new "autopatrol" right,
assigned only to sysops by default. Also, users cannot mark their own edits as patrolled.
URLリンク(www.mediawiki.org)

そんでは~


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch