我正在尝试从“itunes store”中获取最新的播客信息,以便在多个应用程序(iPhone 应用程序和网络应用程序)中使用这些数据。

有没有办法获取这些信息?RSS、JSON 还是什么?

我想在 Objective-C 和带有 php 或 js 的网站上使用这些信息。

我的问题清楚吗?:(

//编辑:有什么不清楚的吗?留下评论,如果是的话

有帮助吗?

解决方案

根据你的问题,我只是想找到一种方法来做到这一点。

  1. 因此,您需要播客 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”)。

  2. ???

  3. 将 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”。如果你不改变它,你会得到非常不同的东西。

  4. 您最终将得到 XML 数据;包含在中的 XML plist DocumentProtocol 标签。它看起来像

    u003CDocument>u003CProtocol>u003Cplist version="1.0">...u003C/plist>n u003C/Protocol>nu003C/Document>

如果您选择的语言有库,您可以从中提取 plist 数据并使用库来操作它。本质上会有一个“根”字典和一个名为“订阅播客”的字典。这个“订阅播客”字典将有一个名为“feedURL”的键 - 获取该值,您将获得 RSS 提要。我建议尝试这些步骤并遵循。

plist 的一个更容易理解的表示是 下一步格式, ,实际上看起来有点像 JSON。转换为这种格式的虚拟播客 plist 的摘录如下(请记住,您实际上将返回一个类似 XML 的文件):

{
    "subscribe-podcast" = {
        …
        feedURL = "http://feeds.feedburner.com/yaddayaddayadda"; 
        …
        podcastName = "Lorem Ipsum"; 
        …
    }; 
}

现在您会注意到我描述的步骤中缺少第 2 步。这是因为我查看了 Apple 手动返回给我的数据,以获取第 3 步中的 URL。您可能需要自己解析数据,以防 Apple 决定更改 URL,但中间的 HTML 可能会更改并破坏您的程序。我可能会回去查看记录在步骤 3 中获取我们的 magic URL 应该采取的步骤。

我在几个播客中尝试了这个策略,它似乎在为我提供 RSS 提要方面效果很好。由于我不知道您要求的任何语言,因此我无法就代码提出任何建议。不过,希望它能让你上路。

其他提示

  1. 从 iTunes-url 中提取 id https://itunes.apple.com/de/podcast/ard-radio-tatort/id310864997?mt=2&uo=2 (在此示例中为“310864997”)
  2. 您可以使用以下正则表达式提取 id: /id(\d+)/
  3. 在以下url中输入id,即可通过Apple的api获取feed信息https://itunes.apple.com/lookup?id={FEED_ID}&entity=podcast
  4. 查找服务将返回一个 JSON 文件。您将在 JSON 内的“feedUrl”字段中找到 rss url。

Volt 的解决方案有两个优点。

  1. 您不必伪造浏览器代理。
  2. 您会得到干净简单的 JSON 作为响应。

如果您想查看实例,请查看 xTunes-Podcatcher, ,我自己实现了上述技术/步骤。只需输入您的 iTunes 播客网址并从中获取 RSS 网址即可。

如果有你要找的数据RSS源,您可以使用此的RSS / Atom解析器为iPhone 我刚刚发布。

希望能有些用处的!

我从的 feedburner.com 间接所需的播客的RSS。我不能从网站上找到它。但我通过Google搜索与关键字的FeedBurner沿所需的“播客的名字”。所述搜索结果具有对应于从Feedburner的名称播客RSS页面。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top