Wikiさんへのスクレイピングでデータを更新する計画ですが、テーブルに特定のidが無い事や表記揺れ等でエラーがでる度に調整が必要になりむしろ手間が増えてしまいそうだったのでボツになりました。
・・・というのが半年前。
以降更新が止まってしまっていたのですが、使われている方もまだまだいるのに放置は無いなーということでこんな更新方法を考えてみました。
ごにょごにょ書いてありますが要は、
1. googleのスプレッドシートにデータを入力して
2. 参照用シートを1枚かませて
3. 参照用シートをPHPから呼び出してJSON化
4. それをテスト本番に反映
という感じです。
何故こんな更新方法を考えたのかと言うとスプレッドシートは共有できるからです。
もっと噛み砕くと、
バトオペが好きな人に更新してもらえるかも?
という思惑からです!
もちろん自分サボらなければ良いだけの話なのですが、今までも、そしてこれからも更新が遅れ遅れになってしまいそうですし、更新情報を報告頂ける方もいらっしゃるのでそれなら自分の手を放して有志の方にお任せしたほうがむしろ更新が滞らないんじゃないか?という思いがあります(半分は自分の怠惰ですが…)
とはいえ、無差別に書き込みを許してしまうとイタズラの対応などが大変なので、しばらくは信頼できそうな方(のgoogleアカウント)にスプレッドシートへの書き込みを許可して更新いただこうかなと思っています。
この方法であれば、
・誰がどこを更新したか履歴が残る
・万一いたずらや間違いがあっても履歴から戻せる
・履歴からも戻せない場合は(私のローカル)ファイルから戻す
といった事が可能です。
更新されたシートのデータは直ぐに本番に反映されるわけではなく、テスト、本番へ更新用ページを通してシートのデータを反映できるようにしようと思っています。
(このページはBasic認証かgoogleアカウントの認証で制御かな)
先ずは今日明日でシートの作成と、できればJSONの出力まで終わらせて明日中にはテストページに反映できると年内には完成するかも。