iTunes 最近添加 XML 未显示更新结果
iTunes recently added XML not showing updated results
标题几乎完全解决了我的问题,我正在尝试 return 来自 iTunes Newly Released 部分的内容 XML feed。
你可以在这里查看
http://ax.itunes.apple.com/WebObjects/MZStore.woa/wpa/MRSS/newreleases/limit=100/genre=rap/rss.xml
显示所有 RSS 提要选项的官方页面。
这是我的代码。
$string = file_get_contents('http://ax.itunes.apple.com/WebObjects/MZStore.woa/wpa/MRSS/newreleases/limit=100/genre='.$genre_id.'/rss.xml');
// Remove the colon ":" in the <xxx:yyy> to be <xxxyyy>
$string = preg_replace("/(<\/?)(\w+):([^>]*>)/", "", $string);
$xml = simplexml_load_string($string);
// Output
$rssresults = '';
foreach ($xml->channel->item as $val) {
// edit foreach
$musicid = $val->link;
$musicid=explode('/',$musicid);
$musicid=explode('?',$musicid[5]);
$bigimage = preg_replace('/100x100bb/ms', "180x180bb", $val->itmscoverArt[2]);
$rssresults .= '<li class="page-item"><div class="pagethumb"><a href="'.$site_url.'/music/'.$musicid[0].'/'.cano($val->title).'"><img data-src="'.$bigimage.'" src="'.$site_url.'/images/loading.svg" alt="'.$val->title.'"></a></div>
<div class="info"><h3><a href="'.$site_url.'/music/'.$musicid[0].'/'.cano($val->title).'">'.$val->itmsalbum.'</a></h3>
<h4>'.$val->itmsartist.'</h4>
</div>
</li>';
}
echo $rssresults;
上面的代码完美无缺,怎么会 return 旧帖子,我怎么能 return 实际新发布的 iTunes 帖子,我不认为它是 RSS url 本例中提供。
我不会为你做所有事情,但这应该足以让你朝着正确的方向前进。
看来 iTunes 已经更新了你阅读他们 XML data(2017 年左右)的方式,我猜这发生了。对于你想要实现的目标,你需要做这样的事情。
$string = file_get_contents('https://rss.itunes.apple.com/api/v1/us/apple-music/new-releases/all/100/explicit.rss');
$string = preg_replace("/(<\/?)(\w+):([^>]*>)/", "", $string);
$xml = simplexml_load_string($string);
$rssresults = '';
foreach ($xml->channel->item as $val) {
print $val->title;
print '<br>';
}
echo $rssresults;
我已经测试了上面的代码并且它正在我这边工作,希望这对你有帮助。
标题几乎完全解决了我的问题,我正在尝试 return 来自 iTunes Newly Released 部分的内容 XML feed。
你可以在这里查看 http://ax.itunes.apple.com/WebObjects/MZStore.woa/wpa/MRSS/newreleases/limit=100/genre=rap/rss.xml
显示所有 RSS 提要选项的官方页面。
这是我的代码。
$string = file_get_contents('http://ax.itunes.apple.com/WebObjects/MZStore.woa/wpa/MRSS/newreleases/limit=100/genre='.$genre_id.'/rss.xml');
// Remove the colon ":" in the <xxx:yyy> to be <xxxyyy>
$string = preg_replace("/(<\/?)(\w+):([^>]*>)/", "", $string);
$xml = simplexml_load_string($string);
// Output
$rssresults = '';
foreach ($xml->channel->item as $val) {
// edit foreach
$musicid = $val->link;
$musicid=explode('/',$musicid);
$musicid=explode('?',$musicid[5]);
$bigimage = preg_replace('/100x100bb/ms', "180x180bb", $val->itmscoverArt[2]);
$rssresults .= '<li class="page-item"><div class="pagethumb"><a href="'.$site_url.'/music/'.$musicid[0].'/'.cano($val->title).'"><img data-src="'.$bigimage.'" src="'.$site_url.'/images/loading.svg" alt="'.$val->title.'"></a></div>
<div class="info"><h3><a href="'.$site_url.'/music/'.$musicid[0].'/'.cano($val->title).'">'.$val->itmsalbum.'</a></h3>
<h4>'.$val->itmsartist.'</h4>
</div>
</li>';
}
echo $rssresults;
上面的代码完美无缺,怎么会 return 旧帖子,我怎么能 return 实际新发布的 iTunes 帖子,我不认为它是 RSS url 本例中提供。
我不会为你做所有事情,但这应该足以让你朝着正确的方向前进。
看来 iTunes 已经更新了你阅读他们 XML data(2017 年左右)的方式,我猜这发生了。对于你想要实现的目标,你需要做这样的事情。
$string = file_get_contents('https://rss.itunes.apple.com/api/v1/us/apple-music/new-releases/all/100/explicit.rss');
$string = preg_replace("/(<\/?)(\w+):([^>]*>)/", "", $string);
$xml = simplexml_load_string($string);
$rssresults = '';
foreach ($xml->channel->item as $val) {
print $val->title;
print '<br>';
}
echo $rssresults;
我已经测试了上面的代码并且它正在我这边工作,希望这对你有帮助。