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下一个阿拉伯数字转中文数字的函数
Jul 16 PHP
PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
Apr 09 PHP
PHP不用递归实现无限分级的例子分享
Apr 18 PHP
ThinkPHP打开验证码页面显示乱码的解决方法
Dec 18 PHP
php中通过DirectoryIterator删除整个目录的方法
Mar 13 PHP
Codeigniter实现发送带附件的邮件
Mar 19 PHP
php 无限分类 树形数据格式化代码
Oct 11 PHP
php变量与JS变量实现不通过跳转直接交互的方法
Aug 25 PHP
PHP中实现中文字串截取无乱码的解决方法
May 29 PHP
php和vue配合使用技巧和方法
May 09 PHP
php字符串截取函数mb_substr用法实例分析
Jun 25 PHP
php 利用socket发送GET,POST请求的实例代码
Jul 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
用PHP 4.2书写安全的脚本
2006/10/09 PHP
PHP防盗链代码实例
2014/08/27 PHP
功能强大的PHP图片处理类(水印、透明度、旋转)
2015/10/21 PHP
javascript 写类方式之三
2009/07/05 Javascript
Prototype Object对象 学习
2009/07/12 Javascript
javascript 继承实现方法
2009/08/26 Javascript
JavaScript 面向对象的之私有成员和公开成员
2010/05/04 Javascript
jqueryUI里拖拽排序示例分析
2015/02/26 Javascript
jQuery zclip插件实现跨浏览器复制功能
2015/11/02 Javascript
微信小程序 开发指南详解
2016/09/27 Javascript
VueJS全面解析
2016/11/10 Javascript
js 中获取制定的cook信息实现方法
2016/11/19 Javascript
原生js实现下拉框功能(支持键盘事件)
2017/01/13 Javascript
nodejs爬虫遇到的乱码问题汇总
2017/04/07 NodeJs
浅谈Vue.nextTick 的实现方法
2017/10/25 Javascript
NodeJS 将文件夹按照存放路径变成一个对应的JSON的方法
2018/10/17 NodeJs
详解小程序input框失焦事件在提交事件前的处理
2019/05/05 Javascript
Vue项目中如何使用Axios封装http请求详解
2019/10/23 Javascript
[31:00]2014 DOTA2华西杯精英邀请赛5 24 NewBee VS iG
2014/05/25 DOTA
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
Python 冒泡,选择,插入排序使用实例
2015/02/05 Python
在Python的框架中为MySQL实现restful接口的教程
2015/04/08 Python
Python3利用Dlib19.7实现摄像头人脸识别的方法
2018/05/11 Python
python查看列的唯一值方法
2018/07/17 Python
使用tensorflow实现线性回归
2018/09/08 Python
python flask 如何修改默认端口号的方法步骤
2019/07/12 Python
Python中pymysql 模块的使用详解
2019/08/12 Python
pytorch读取图像数据转成opencv格式实例
2020/06/02 Python
最新版 Windows10上安装Python 3.8.5的步骤详解
2020/11/28 Python
python-jwt用户认证食用教学的实现方法
2021/01/19 Python
一款基于css3和jquery实现的动画显示弹出层按钮教程
2015/01/04 HTML / CSS
浅谈利用缓存来优化HTML5 Canvas程序的性能
2015/05/12 HTML / CSS
财务务虚会发言材料
2014/10/20 职场文书
夏洛特的网观后感
2015/06/15 职场文书
给校长的建议书作文500字
2015/09/14 职场文书
2016年清明节期间群众祭祀活动工作总结
2016/04/01 职场文书