2018年11月26日

WikipediaのURLを短縮する方法・改


長ったらしいWikipediaのURLを比較的短くするツールを作ってみたのでメモメモ…




このツールは2018年に作成・公開されたものです。現在は日本語版 Wikipedia 各記事のメニュー内から短縮URLを簡単に取得することができます。


これはなに?


Wikipediaの各ページに振られているページIDを利用することで、URLを短縮するスクリプトです。詳しくはこちらの記事(WikipediaのURLを短縮する方法)をご覧ください。凝った機能はありませんが、日本語版Wikipediaのアドレスを短くするという目的だけならとりあえず役に立つと思います。

使い方は?


入力欄に日本語版WikipediaのページタイトルかURL(https://ja.wikipedia.org/wiki/…)を丸ごと貼り付けて「変換」ボタンを押すだけです。そのすぐ下の枠内に短縮URLが表示されます。たとえば「聖闘士星矢」のページを変換する場合は以下の例のようになります。

聖闘士星矢
これはOK。日本語版ページタイトルです。

https://ja.wikipedia.org/wiki/聖闘士星矢
https://ja.wikipedia.org/wiki/%E8%81%96%E9%97%98%E5%A3%AB%E6%98%9F%E7%9F%A2
これもOK。URLからも変換できます。

https://en.wikipedia.org/wiki/Saint_Seiya
これはダメ。"Saint Seiya"が日本語版Wikipediaの項目名ではないので読み取れません。

https://ja.wikipedia.org/w/index.php?title=聖闘士星矢
これもダメ。index.phpや?title=などややこしいクエリ文字列の含まれているアドレスは変換できません。

注意することは?


特殊なページタイトルやURLだと変換に失敗することがあります。うまく変換できなかったり意図しない動作になったりしても、どうか大目に見てやってください…。また、このスクリプトではMediaWikiのAPIを利用しWikipedia側からデータを取得しています。普通に使っている分には何の問題もないと思いますが、悪用して短時間に異常な回数のリクエストを送り付けたりするのはやめましょう。

具体的に内部でどういう処理になっているか気になる方はソースコードをご覧ください。

ほかには?


調べたところ現在Wikipedia(英語版)で最も長いページタイトルは
Lopadotemachoselachogaleokranioleipsanodrimhypotrimmatosilphioparaomelitokatakechymenokichlepikossyphophattoperisteralektryonoptekephalliokigklopeleiolagoiosiraiobaphetraganopterygon
だそうです。本来であればもっと長い名前のもの(たとえばチャンバワンバのアルバム"The Boy Bands Have Won..."など)があるはずなのですが、Wikipediaタイトルの文字数制限(255バイトまで)にひっかかって省略されてしまっているようです。「だから何だ」と言われると困るのですが…。