PHP音乐采集(部分代码)


Posted in PHP onFebruary 14, 2007

<?PHP
set_time_limit(0);
mysql_connect("localhost","root","");
mysql_select_Db("music_36g");

$ip = '127.0.0.1';

function _GetIP() 
{
        $ip  = getenv("REMOTE_ADDR");
        $ip1 = getenv("HTTP_X_FORWARDED_FOR");
        $ip2 = getenv("HTTP_CLIENT_IP");
        ($ip1) ? $ip = $ip1 : null ;
        ($ip2) ? $ip = $ip2 : null ;
        return $ip;
}
function MakePassword($length=10)
{        
        $password = '';
        $chars = 
                array
                (
                        "1","2","3","4","5","6","7","8","9","0",
                        "a","A","b","B","c","C","d","D","e","E","f","F","g","G","h","H","i","I","j","J",
                        "k","K","l","L","m","M","n","N","o","O","p","P","q","Q","r","R","s","S","t","T",
                        "u","U","v","V","w","W","x","X","y","Y","z","Z"
                );

        $count = count($chars) - 1;
        srand((double)microtime()*1000000);

        for($i = 0; $i < $length; $i++)
        {
                $password .= $chars[rand(0, $count)];
        }
        return($password);
}

if ( _GetIP() != $ip ) 
{
        exit("Can't Run!");
}

for ( $i=2;$i<5769;$i++)//52738
{
        $url = "http://music.36g.net/SpecialInfo/showspecial".$i.".htm";

        $File = @fopen($url,'rb');
        if ( $File )
        {
                $makeFile = $buffer = "";
                $buffer = "";
                while ($buffer = fread($File,4096))
                {
                        $makeFile = $makeFile.$buffer;
                }
                @fclose($File);

                
                preg_match("/src=\/uppic\/(.*) width=135/",$makeFile,$pic);#图片
                #下载图片
                if ( $pic[1]!='es/Nophoto.gif' )
                {
                        $p_url = "http://music.36g.net/uppic/".$pic[1];

                        $File2 = fopen($p_url,'rb');
                        if ( $File2 )
                        {
                                $Buffer2 = $makeFile2 = "";
                                while ($Buffer2 = fread($File2,4096))
                                {
                                        $makeFile2 = $makeFile2.$Buffer2;
                                }
                                fclose($File2);

                        
                                $Filename2 = './pic/'.$pic[1];
                                $Fp2 = fopen ($Filename2,'w+');
                                fwrite($Fp2,$makeFile2);
                                fclose($Fp2);
                        }
                }
                else
                {
                        $pic[1] = '';
                }

                preg_match("/专辑:<\/strong>(.*)<\/td><td width=(\d+) rowspan=6/",$makeFile,$name);#专辑名称
                $name = addslashes($name[1]);

                preg_match("/歌手:<\/strong>(.*)<\/td><\/tr><tr><td>/",$makeFile,$songer);#歌手名称
                preg_match("/(.*)<\/td><\/tr><tr><td>/",$songer[1],$songer_name);#歌手名称
                preg_match("/发行公司:<\/strong>(.*)/",$songer[1],$company);#发行公司

                preg_match("/发行时间<\/strong>:(.*)<\/td> <\/tr>/",$makeFile,$date);#发行时间
                preg_match("/(.*)<\/td>/",$date[1],$date2);#发行时间
                preg_match("/<\/strong>(.*)/",$date[1],$language);#发行语言

                preg_match("/专辑简介:<\/strong><\/td> <td colspan=2>(.*)<\/td><\/tr><\/table><br>/",$makeFile,$descript);#专辑简介

                $songer_name = addslashes($songer_name[1]);        
                $company= addslashes($company[1]);

                $descript= addslashes($descript[1]);

                #取得歌曲ID
                preg_match_all("/download1\.asp\?id=(\d+)&which=BakDownUrl1/",$makeFile,$id2);#歌曲ID

                $num = count($id2[1]);
                for ($jj=0;$jj<$num;$jj++)
                {        
                        $sql = " insert into tx_music set musicID='".$id2[1][$jj]."',specialID='$i',specialName='$name',songerName='$songer_name',orderByID='".$id2[1][$jj]."' ";
                        //echo $id2[1][$jj]."<br>";
                        mysql_query($sql);
                }

                //echo $descript."<br><br>";

                $sql = " insert into tx_special set orderByID='$i',specialID='$i',specialName='$name',songerName='$songer_name',company='$company',date='$date2[1]',language='$language[1]',picture='$pic[1]',musicNum='$num',createDate='".time()."',description='$descript' ";
                echo $sql;
                mysql_query($sql);

        }
}
?>

PHP 相关文章推荐
PHP开发的一些注意点总结
Oct 12 PHP
php过滤XSS攻击的函数
Nov 12 PHP
php设置session值和cookies的学习示例
Mar 21 PHP
ThinkPHP采用实现三级循环代码实例
Jul 18 PHP
PHP如何通过传引用的思想实现无限分类(代码简单)
Oct 13 PHP
非常实用的php验证码类
May 15 PHP
PHP性能优化大全(php.ini)
May 20 PHP
PHP实现文件上传下载实例
Oct 18 PHP
php写一个函数,实现扫描并打印出自定目录下(含子目录)所有jpg文件名
May 26 PHP
golang实现php里的serialize()和unserialize()序列和反序列方法详解
Oct 30 PHP
Thinkphp5.0 框架的请求方式与响应方式分析
Oct 14 PHP
php libevent 功能与使用方法详解
Mar 04 PHP
一个数据采集类
Feb 14 #PHP
phpmyadmin中配置文件现在需要绝密的短语密码的解决方法
Feb 11 #PHP
增加反向链接的101个方法 站长推荐
Jan 31 #PHP
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
Jan 29 #PHP
解决控件遮挡问题:关于有窗口元素和无窗口元素
Jan 28 #PHP
获得Google PR值的PHP代码
Jan 28 #PHP
一键删除顽固的空文件夹 软件下载
Jan 26 #PHP
You might like
利用webqq协议使用python登录qq发消息源码参考
2013/04/08 Javascript
引用 js在IE与FF之间的区别详细解析
2013/11/20 Javascript
简单方法判断JavaScript对象为null或者属性为空
2014/09/26 Javascript
JavaScript 函数模式详解及示例
2016/09/07 Javascript
bootstrapValidator自定验证方法写法
2016/12/01 Javascript
jQuery模拟淘宝购物车功能
2017/02/27 Javascript
jquery 禁止鼠标右键并监听右键事件
2017/04/27 jQuery
使用npm安装最新版本nodejs
2018/01/18 NodeJs
jQuery实现的点击标题文字切换字体效果示例【测试可用】
2018/04/26 jQuery
AngularJS ui-router刷新子页面路由的方法
2018/07/23 Javascript
node.js实现上传文件功能
2019/07/15 Javascript
javascript实现商品图片放大镜
2019/11/28 Javascript
JavaScript中layim之整合右键菜单的示例代码
2021/02/06 Javascript
Python的lambda匿名函数的简单介绍
2013/04/25 Python
python使用multiprocessing模块实现带回调函数的异步调用方法
2015/04/18 Python
python开发之list操作实例分析
2016/02/22 Python
Python_LDA实现方法详解
2017/10/25 Python
Python hexstring-list-str之间的转换方法
2019/06/12 Python
Python实现K折交叉验证法的方法步骤
2019/07/11 Python
numpy np.newaxis 的实用分享
2019/11/30 Python
Python基础之字符串常见操作经典实例详解
2020/02/26 Python
利用CSS3 动画 绘画 圆形动态时钟
2018/03/20 HTML / CSS
LightInTheBox西班牙站点:全球商品在线采购
2016/09/22 全球购物
Petmate品牌官方网站:宠物用品
2018/11/25 全球购物
小学生期末自我鉴定
2014/01/19 职场文书
渡河少年教学反思
2014/02/12 职场文书
招股说明书范本
2014/05/06 职场文书
节约用水的口号
2014/06/20 职场文书
英语系毕业生求职信
2014/07/13 职场文书
社会学专业求职信
2014/07/17 职场文书
房屋转让协议书
2014/10/18 职场文书
服务承诺书
2015/01/19 职场文书
校运会广播稿
2015/08/19 职场文书
《比尾巴》教学反思
2016/02/24 职场文书
2019大学生预备党员转正思想汇报
2019/06/21 职场文书
Python中递归以及递归遍历目录详解
2021/10/24 Python