RSS、JSON などによるリンクを使用して、iTunes ストアから最新のポッドキャストを取得します
-
26-09-2019 - |
質問
「itunes ストア」から最新のポッドキャスト情報を取得して、このデータをいくつかのアプリケーション (iPhone アプリと Web アプリ) で操作しようとしています。
この情報を入手する方法はありますか?RSSとかJSONとか?
この情報をobjective-cとphpまたはjsを使用したWebサイトで操作したいと考えています。
私の質問は明確ですか?:(
//編集:何か不明な点はありますか?はいの場合はコメントを残してください
解決
あなたの質問に基づいて、これを行う方法を見つけようとしました。
したがって、ポッドキャスト ID が必要になります (持っている場合は URL から明らかになるはずです。例えば
http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=82884735
ID「82884735」があり、http://itunes.apple.com/us/podcast/this-week-in-tech-mp3-edition/id73329404
ID は「73329404」です)。???
IDをURLに挿入します
https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/com.apple.jingle.app.finance.DirectAction/subscribePodcast?id={ID}&wasWarnedAboutPodcasts=true
データを取得します。{ID}
はポッドキャスト ID です。 ここで、ユーザー エージェント文字列を iTunes に変更することが重要です。 今回の実験では「iTunes/7.4.1」を使用しました。それを変更しなければ、まったく異なるものが得られます。最終的には XML データになります。で囲まれた XML plist
Document
そしてProtocol
タグ。次のようになりますu003CDocument>u003CProtocol>u003Cplist version="1.0">...u003C/plist>n u003C/Protocol>nu003C/Document>
ここから plist データを取得し、選択した言語にライブラリがある場合は、ライブラリを使用してそれを操作できます。基本的に、「ルート」辞書と、その中に「subscribe-podcast」と呼ばれる辞書が存在します。この「subscribe-podcast」辞書には「feedURL」というキーがあり、その値を取得すると、RSS フィードが得られます。これらの手順を試して、それに従うことをお勧めします。
plist をわかりやすく表現すると、次のようになります。 NeXTSTEP形式, 、実際には JSON に少し似ています。この形式に変換されたダミーのポッドキャスト plist の抜粋は次のとおりです (実際には XML のようなファイルが返されることに注意してください)。
{
"subscribe-podcast" = {
…
feedURL = "http://feeds.feedburner.com/yaddayaddayadda";
…
podcastName = "Lorem Ipsum";
…
};
}
ここで、私が説明した手順で、手順 2 が欠落していることに気づくでしょう。これは、手順 3 で URL にアクセスするために Apple から手動で返されたデータを参照したためです。Apple が URL を変更することにした場合に備えて、自分でデータを解析する必要がある可能性がありますが、いずれにせよ中間の HTML が変更されてプログラムが壊れる可能性が高いでしょう。戻って、ステップ 3 のマジック URL にアクセスするために実行する必要があるステップを文書化することを検討するかもしれません。
いくつかのポッドキャストでこの戦略を試してみましたが、RSS フィードの提供にはうまく機能しているようです。私はあなたが要求した言語を何も知らないので、コードに関して推奨することはできません。ただし、それがあなたを前進させることができることを願っています。
他のヒント
- iTunes URL から ID を抽出する
https://itunes.apple.com/de/podcast/ard-radio-tatort/id310864997?mt=2&uo=2
(この例では「310864997」) - 次の正規表現を使用して ID を抽出できます。
/id(\d+)/
- 以下のURLにIDを入力するとAppleのAPI経由でフィード情報を取得します
https://itunes.apple.com/lookup?id={FEED_ID}&entity=podcast
- ルックアップ サービスは JSON ファイルを返します。RSS URL は、JSON 内の「feedUrl」フィールドにあります。
Volt のソリューションには 2 つの利点があります。
- ブラウザー エージェントを偽る必要はありません。
- 応答としてクリーンでシンプルな JSON が得られます。
実際の例を見たい場合は、以下をご覧ください。 xTunes ポッドキャッチャー, 、ここで私は上記のテクニック/ステップを自分で実装しました。iTunes ポッドキャストの URL を入力し、そこから RSS URL を取得するだけです。
、あなたはiPhoneのために、この RSS / Atomのパーサを使用することができますの私はちょうどリリースされました。
希望、それはいくつかの使用をすることができます!
私は間接的の feedburner.com のから必要なポッドキャストのRSSを得ました。私はサイトからそれを見つけるcouldntの。しかし、私は、キーワードでFeedBurnerのに伴い必要な「ポッドキャスト名」のためのgoogleで検索しました。検索結果には、FeedBurnerのから名前に対応するポッドキャストRSSページを持っています。