Maison  >  Article  >  développement back-end  >  Méthode PHP régulière pour obtenir le top 500 du classement musical Baidu

Méthode PHP régulière pour obtenir le top 500 du classement musical Baidu

PHP中文网
PHP中文网original
2017-08-19 17:31:471894parcourir

Cet article explique comment utiliser les expressions régulières php pour obtenir les 500 meilleures données du classement musical Baidu et les afficher sur notre propre page Web.

Le code a été débogué avec succès par moi et peut être utilisé comme. une référence

Le code est le suivant :

取百度音乐排行榜top500 
<title>百度音乐top500</title>
<style>
body{
font-size:12px;
font-family:Verdana, Arial, Helvetica, sans-serif;
}
ul{
clear:both;
padding:0;
margin:0;
list-style:none;
}
#inner{
width:960px;
margin-left:auto;
margin-right:auto;
text-align:center;
}
#tableFrame{
width:960px; /*需要修改*/
border-top:#000 1px solid;
border-left:#000 1px solid;
font-size:12px;
}
#tableFrame:after {
content: "."; 
display: block;
height: 0; 
clear: both; 
visibility: hidden;
}
li{
float:left;
display: block;
width:190px; /*需要修改*/
height:41;
padding:2px;
margin:0;
border-right:#000 1px solid;
border-bottom:#000 1px solid;
line-height:16px;
color:000;
overflow:scroll;
}
/* 表格标题*/
#tableFrameTitle ul{}
#tableFrameTitle ul li{
background:gray; 
text-align:center;
color:#fff;
}
/* 表格内容*/
#tableCase ul{}
#tableCase ul li{}
/* 单个表格特定样式*/
.tableCaseThree{color:#329A02;}
.tableCaseFive{color:#f00;}
.tableCaseSeven{color:#f00;}
</style>
<p id=inner>
<p id="tableFrame">
    <p id="tableFrameTitle">
        <ul>
            <li>排名</li>
            <li>歌名</li>
            <li>排名变化趋势</li>
            <li>红雨</li>
            <li>RedRain</li>
        </ul>
    </p>
    <p id="tableCase">
<ul>
<?php
$contents=file_get_contents("http://music.baidu.com/top/dayhot");
$pattern="{<[^>]+song-title[^>]+><a href=\"(.*)\" title=\"(.*)\">}U";
preg_match_all($pattern,$contents,$out,PREG_PATTERN_ORDER);
$pattern1="{[1-9][0-9]{0,2}.*<i class=\"(.*)\"></i>}U";
preg_match_all($pattern1,$contents,$out1,PREG_PATTERN_ORDER);
$c=0;
for($i=0;$i<500;$i++){
if($c==5){
$c=1;
?>
</ul><ul>
<?php
}else{
$c++;
}
$get=$out[1][$i];
$get1=$out[2][$i];
$get2=$out1[1][$i];
echo "<li>".iconv("utf-8","gb2312",($i+1).".<a href=&#39;http://music.baidu.com$get&#39; target=&#39;_blank&#39;>".$get1."</a><img src=&#39;../$get2.jpg&#39;>")."</li>";
}
?>
</ul>
</p>
</p>
</p>

Cet article est fourni par le site Web PHP chinois,

Adresse de l'article : http:/ /www.php.cn/php-weizijiaocheng-377134.html

Pour apprendre la programmation, venez sur le site Web PHP chinois www.php.cn

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn