首页 > php教程 > php手册 > 正文

六、电影排行榜

php中文网
发布: 2016-06-07 11:42:45
原创
1836人浏览过

微信电影排行榜
在网上找了很久都没找到一个电影api,豆瓣电影api可以,可是要认证地址,麻烦,于是就找了一个网站,实时抓取数据了,由于我抓取的数据没有直接保存进数据库,so,过个过程会有点慢.先上效果图


1、入口界面
六、电影排行榜

2、排行榜页面
六、电影排行榜

3、今日排行(输入3.1)
六、电影排行榜

4、北美票房(3.2)
六、电影排行榜

5、香港票房 3.3
六、电影排行榜

6、电影收视榜 3.4
六、电影排行榜

7、电视收视榜 3.5
六、电影排行榜

数据抓取来源:http://data.entgroup.cn ,使用到了simple_html_dom html解析库,代码如下//----------------------------------------------------------------电影排行榜开始------------<br>     //抓取http://data.entgroup.cn/电影数据<br>     private function _movie_comm($url,$param="",$title=""){<br>         //设置头内容<br>         $length=empty($param)?0:19;//好吧,我这里写死了长度..<br>         $header=array(<br>             "Accept-Encoding:gzip,deflate,sdch",<br>             "Accept-Language:zh-CN,zh;q=0.8",<br>             "Content-Length:$length",<br>             "Content-Type:application/json; charset=UTF-8",<br>             "Host:data.entgroup.cn",<br>         );<br>         $reArr=http($url,$param,"POST",$header);<br>         Log::write("url -&gt;$url , param =$param ,head =&gt;".print_r($header,true));<br>         $data=json_decode($reArr);<br>         if(empty($data)){<br>             return array("未找到数据,请检查网络或稍后再试试看。","text");<br>         }<br>         $html=$data-&gt;d;<br>         $preg2='/<a>(.*?)/is';//(?!<img alt="六、电影排行榜" >         preg_match_all($preg2,$html,$match);<br>         $data=$match[1];<br>         $count=count($data);<br>         $datas=array();<br>         for($i=0;$i             if($i&gt;8){<br>                 break;<br>             }<br>             if($i==0){//第一张是图片<br>                 $datas[$i][]        =    $title;<br>                 $datas[$i][]        =    "";<br>                 $src_path=$data[$i];<br>                 $pattern="//";//抓取图片<br>                 preg_match_all($pattern,$src_path,$image_match);<br>                 $datas[$i][]        =    $image_match[1][0];<br>                 $datas[$i][]        =    "";<br>             }else{<br>             <br>                 $datas[$i][]        =    "{$i}、".$data[$i];<br>                 $datas[$i][]        =    "";<br>                 $datas[$i][]        =    "";<br>                 $datas[$i][]        =    "";<br>             }<br>         }<br>         $datas[$count][]        =    "小助手:回复 ? 进入到主菜单。";<br>         $datas[$count][]        =    "";<br>         $datas[$count][]        =    "";<br>         $datas[$count][]        =    "";<br><br>         return array($datas,"news");<br>     }<br><br>     //今日票房<br>     public function get_today(){<br>         return $this-&gt;_movie_comm("http://data.entgroup.cn/BoxOffice/movieData/Movie.aspx/BindDayList","今日票房");<br>     }<br><br>     private function _get_week_id($find_id){<br>       import("@.ORG.simple_html_dom",null,".php");<br>       $html= file_get_html("http://data.entgroup.cn/boxoffice/oversea");<br>       $ele=$html-&gt;find("$find_id option",0);<br>       return $ele?$ele-&gt;value:null;<br>     }<br>     //北美票房<br>     public function get_na(){<br>         $weekId=$this-&gt;_get_week_id("#week2");<br>         $param="{ 'weekId': '$weekId'}";<br>         return $this-&gt;_movie_comm("http://data.entgroup.cn/BoxOffice/movieData/oversea.aspx/BindUSAList",$param,"北美票房");<br>     }<br><br>     //香港票房<br>     public function get_hk(){<br>         $weekId=$this-&gt;_get_week_id("#week1");<br>         $param="{ 'weekId': '$weekId'}";<br>         return $this-&gt;_movie_comm("http://data.entgroup.cn/BoxOffice/movieData/oversea.aspx/BindHongKongList",$param,"香港票房");<br>     }<br><br>     //电影收视,电视收视共同<br>     private function _send_movie_comm($url,$match,$title,$image){<br>         import("@.ORG.simple_html_dom",null,".php");<br>          $html= file_get_html($url);<br>         $ok_datas=$html-&gt;find($match);<br>         $datas=array();<br>         $i=0;<br>         foreach($ok_datas as $row){<br>             if($i&gt;9){<br>                 break;<br>             }<br>             if($i==0){//第一张是图片<br>                 $datas[$i][]        =    $title;<br>                 $datas[$i][]        =    "";<br>                 $datas[$i][]        =    "http://www.aidemofang.com.img.800cdn.com/Public/home/images/$image";<br>                 $datas[$i][]        =    "";<br>             }else{<br>             <br>                 $datas[$i][]        =    "{$i}、".trim($row-&gt;plaintext);<br>                 $datas[$i][]        =    "";<br>                 $datas[$i][]        =    "";<br>                 $datas[$i][]        =    "";<br>             }<br>             $i++;<br>         }<br>         $datas[$i][]        =    "小助手:回复 ? 进入到主菜单。";<br>         $datas[$i][]        =    "";<br>         $datas[$i][]        =    "";<br>         $datas[$i][]        =    "";<br>     <br>         return array($datas,"news");<br>     }<br>     //电影收视榜<br>     public function get_movie(){<br>         $url="http://data.entgroup.cn/ratings/film";<br>         $match=".person .trs a";//查找指定的所有a标签数据<br>         return $this-&gt;_send_movie_comm($url,$match,"电影收视榜","movie.jpg");<br>     }<br><br>     //电视收视榜<br>     public function get_tv(){<br>         $url="http://data.entgroup.cn/ratings/tv";<br>         $match=".person .trs a";//查找指定的所有a标签数据<br>         return $this-&gt;_send_movie_comm($url,$match,"电视收视榜","tv.jpg");        <br>     }<br><br> //----------------------------------------------------------------电影排行榜结束------------</a>六、电影排行榜

休闲豆:http://www.xiuxiandou.com

AD:真正免费,域名+虚机+企业邮箱=0元

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号