ホーム 記事一覧 ブック DH週間トピックス 検索 このサイトについて
English
wikibase.cloudでQuickStatementsを試す

wikibase.cloudでQuickStatementsを試す

概要 wikibase.cloudでQuickStatementsを試してみましたので、その備忘録です。 以下の記事を参考にさせていただきました。 https://qiita.com/higa4/items/10affb47215def42d8e0 追加 上記の記事の通り、csvファイルをインポートしています。 ところが、以下のようなエラーが発生しました。 原因は、独自に立てたwikibaseインスタンスに、必要なプロパティが未登録だったことが原因でした。 Property [[Property:P1814|P1814]] not found WikibaseSyncなどを使って、事前に(特にwikidataと同じIDの)プロパティを登録しておく必要があることがわかりました。 そのため、ラベルに関する情報のみを登録する以下のようなデータを登録してみました。 qid,Lja,Len,Dja,Den,qal1545 ,タイトル,title,""""説明,desc,1 結果、以下のようにデータの新規登録ができました。 更新 次のコマンドで、上記で登録したQ59の更新を試みました。 qid,Lja,Len,Dja,Den,qal1545 Q59,変更後のタイトル,updated title,""""変更後の説明,updated desc,1 結果、以下のように、いずれの値も更新することができました。 まとめ ほんの一例ですが、QuickStatementsを試してみました。APIでの登録例を以下の記事で紹介していますが、CSVによる登録はユーザフレンドリーな機能だと感じました。 他の方の参考になりましたら幸いです。

WikibaseSyncを試す

WikibaseSyncを試す

概要 以下のWikibaseSyncを試す機会がありましたので、その備忘録です。 https://github.com/the-qa-company/WikibaseSync 以下の論文で、上記のツールを知りました。 https://doi.org/10.11517/jsaisigtwo.2022.SWO-056_04 インストール ソースコードや関連ライブラリをインストールします。 !get clone https://github.com/the-qa-company/WikibaseSync cd WikibaseSync !pip install -r requirements.txt Bot Accountの作成 事前に用意したWikibaseにアクセスし、「Special pages」から、「Bot passwords」をクリックします。 以下の画面で、「Bot name」を入力します。 次の画面で、以下の3つにチェックを入れます。 Give him the follwing rights: “High-volume editing”, “Edit existing pages” and “Create, edit, and move pages” 結果、以下のようなメッセージが表示され、パスワードを取得することができます。 The bot password for bot name "WikidataUpdater" of user "Nakamura" was created. The new password to log in with Nakamura@WikidataUpdater is xxxxxxxxxxxxxx. Please record this for future reference. (For old bots which require the login name to be the same as the eventual username, you can also use Nakamura as username and WikidataUpdater@xxxxxxxxxxxxxx as password.) Return to Special:BotPasswords. そして、以下の説明にしたがって、インストールしたソースコードの設定ファイルに、上記のBotに関する情報を入力します。 ...

wikibaseのapiをつかってみる

wikibaseのapiをつかってみる

概要 wikibaseのapiをpythonクライアントから使用する機会がありましたので、その備忘録です。 以下のライプラリを使用しました。 https://wikibase-api.readthedocs.io/en/latest/index.html インストール 以下でインストールします。 !pip install wikibase-api Read 今回は、以下のwikibaseインスタンスに対して処理を行います。 https://nakamura196.wikibase.cloud/ from wikibase_api import Wikibase api_url = "https://nakamura196.wikibase.cloud/w/api.php" wb = Wikibase(api_url=api_url) r = wb.entity.get("Q1") print(r) 上記により、Q1に関する情報を取得することができました。 Create 認証情報の取得 アイテムの作成などを行う際には、以下のどちらかの方法で認証を行う必要がありました。 Authentication using OAuth Authentication with a user account 後者はBot passwordsを作成する方法で、以下の記事でも作成方法を紹介しています。 今回は前者の方法を試します。 「Special pages」の「OAuth consumer registration」を選択します。 「Request a token for a new OAuth 1.0a consumer.」と「Request a token for a new OAuth 2.0 client.」の2つの作成方法がありますが、前者を選択します。 項目を埋めていきます。 今回はテストのため、すべての項目にチェックを入れました。 結果、以下のようなページが表示され、認証情報を取得できます。 実行 .envファイルを作成します。 consumer_key=xxx consumer_secret=yyy access_token=zzz access_secret=aaa load_dotenvを使って認証情報をロードして、設定します。 ...

wikibase.cloudを使ってみる

wikibase.cloudを使ってみる

概要 wikibase.cloudを使ってみる機会がありましたので、その備忘録です。 ドキュメント 以下にマニュアルがありました。 https://www.mediawiki.org/wiki/Wikibase/Wikibase.cloud インスタンスの作成 はじめに独自ドメインを設定してみましたが、うまくいきませんでした。以下、記録だけ残します。以後、独自ドメインを諦めて、nakamura196.wikibase.cloudを使用しています。 失敗 独自のドメインを割り当てられるようでしたので、wikibase.aws.ldas.jpを入力しました。 Route 53で以下のような設定を行いました。 テーマの変更 以下のSet Skinで見た目を変更することができました。 Vector Modern Timeless データを作成してみる デフォルトで作成されるユーザでログインすると、以下の画面に遷移しました。 Satoru Itemを作成してみました。 以下のように作成されました。 プロパティ プロパティnameを作成してみます。 アイテムへのStatementsの追加 作成したプロパティ(P1)を使って、アイテム(Q1)にStatementsを追加してみます。 Query Service クエリサービスも問題なく動作しました。 タイムラインを用いた可視化例です。 #defaultView:Timeline select * where { ?s wikibase:timestamp ?o . } 棒グラフの表示例です。 #defaultView:BarChart select ?name (count(?name) as ?count) where { ?s <https://nakamura196.wikibase.cloud/prop/direct/P1> ?name . } group by ?name ...