【jQuery】2018年度版!jquery.xdomainajax.jsが使えなくなったときの解決法

Yahooデベロッパー公式より、YQLサービスが終わるとのツイートがありました。
jquery.xdomainajax.js はYQLサービスを利用していたので、残念ですがこのページで紹介している方法では jquery.xdomainajax.js は利用できなくなりました。
On Jan. 3, 2019, YQL service at https://t.co/g4W9RhdMLk will be retired. YQL based services that use https://t.co/g4W9RhdMLk, including users of https://t.co/5IkUaEykdl, will no longer operate. Yahoo Weather API users see the tweet below for info about continuing your service.
— Y! Developer Network (@ydn) 2018年12月31日
クロスドメインでウェブサイトのスクレイピングができるjQueryのライブラリ「jquery.xdomainajax.js」ですが、いつの頃からかYahooのYQLの仕様が変わったため使えなくなりました。
あぁーこりゃ残念だったねー。
…だけで終われたら良いんですけど、そうもいかないのが世の常というもの。どうにか継続して使えないかと検索に検索を重ねてコードを継ぎ接ぎして使えるようにしました。
もし、公式からダウンロードしたjquery.xdomainajax.jsを使っても表示されない場合は使ってみてください。
そもそもjquery.xdomainajax.jsってなあに?
jquery.xdomainajax.jsはクロスドメインでのスクレイピングが簡単にできるようになる粋なjQueryのライブラリです。
伝わりにくいと思うので、具体的に何ができるかと言うと、他のウェブサイトにある情報をリアルタイムに拾ってくることができるんですね。
身近なところでは、Twitterでツイートした数を表示したいとか、Instagramのフォロワー数を表示したいとか、Yahooのトピックスを取得したいとか、まぁそういうことに使えます。
オフィシャルのはなんで使えないの?
jquery.xdomainajax.jsはYahooのYQLというAPIの一部を利用していたのですが、Yahooがそのサービスを終わらせてしまったんですね。
本来であればそうなったときに製作者が改善したバージョンをリリースするのですが、製作者は新たなバージョンを作っていなくて、オープンソースなのにも関わらずプロジェクトも無さそうなので、世の中に出回っている公式のjquery.xdomainajax.jsは古くて使えないままなのです。
このライブラリ自体、使う機会がかなり限られているのでプロジェクトが無いのも納得できますけどねー。
なので、コードを少し変えて従来通りの実装方法で使用できるものを作ったというわけです。
上書きするだけで使えるよ。
ということで、まぁ今まで通り使えるようになったjquery.xdomainajax.jsを置いておきます。
下記からダウンロードして、今まで使っていたjquery.xdomainajax.jsに上書きしてください。
今まで通りの記述方法で使えるので、HTMLファイルは何も触らなくてだいじょうぶですよ。
なお、jquery.xdomainajax.jsはMITライセンスになりますので著作権表示はオリジナルのままです。ライセンス表示は消さないでくださいねー!
コメント & トラックバック
- Comments ( 2 )
- Trackbacks ( 1 )
-
[…] Yahoo!ショッピング、商品ページのURLをコピーし、フォームに貼り付けて「表示」ボタンをクリックします。すると画面が切り替わり「サムネイル」「商品名」「価格」「入力したURL」「参照URLへのリンクボタン」が表示されるようになっています。つまりURLを入れるだけで、それが「なんの商品か」を一目で識別できるという便利なツールなのです!しかし、これを便利と捉えるかどうかはキミのセンス次第だ! 以下に、本システムに使用するHTML・JSを記載します(スタイルシートはお好みで調整ください)。 また、本システムの使用にはライブラリ「jquery.xdomainajax.js」を使用します。 YQLのサービス終了により元のxdomainajax.jsが使用できないケースがあるため、改訂版のライブラリをこちらよりダウンロードください。 ライブラリ「jquery.xdomainajax.js」の使用に関する不具合に関して当社では責任を負いかねます。予めご了承ください。 […]
続けてすみません、もう使えないと書かれていたのを見落としていました。申し訳ありません。
突然のコメントすみません、ダウンロード先のjquery.xdomainajax.js、古いjquery.xdomainajax.jsと同じものではありませんか?