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中长文章分页显示实现代码
Sep 29 PHP
PHP设计模式之调解者模式的深入解析
Jun 13 PHP
生成随机字符串和验证码的类的PHP实例
Dec 24 PHP
Thinkphp将二维数组变为标签适用的一维数组方法总结
Oct 30 PHP
PHP实现的json类实例
Jul 28 PHP
PHP解压tar.gz格式文件的方法
Feb 14 PHP
php微信支付接口开发程序
Aug 02 PHP
php实现将HTML页面转换成word并且保存的方法
Oct 14 PHP
PHP+Mysql+Ajax实现淘宝客服或阿里旺旺聊天功能(前台页面)
Jun 16 PHP
swoole和websocket简单聊天室开发
Nov 18 PHP
PHP读取并输出XML文件数据的简单实现方法
Dec 22 PHP
2020最新版 PhpStudy V8.1版本下载安装使用详解
Oct 30 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 pthreads多线程的安装与使用
2016/01/19 PHP
php自定义函数实现汉字转换utf8编码的方法
2016/09/29 PHP
JavaScript 格式字符串的应用
2010/03/29 Javascript
js 实现日期灵活格式化的小例子
2013/07/14 Javascript
jquery实现的网页自动播放声音
2014/04/30 Javascript
JS版元素周期表实现方法
2015/08/05 Javascript
Bootstrap每天必学之按钮
2015/11/26 Javascript
简单总结JavaScript中的String字符串类型
2016/05/26 Javascript
AngularJS入门教程之双向绑定详解
2016/08/18 Javascript
DWR3 访问WEB元素的两种方法实例详解
2017/01/03 Javascript
网页中右键功能的实现方法之contextMenu的使用
2017/02/20 Javascript
jQuery实现文档树效果
2017/02/20 Javascript
JavaScript初学者必看“new”
2017/06/12 Javascript
Vue底层实现原理总结
2018/02/17 Javascript
layui点击导航栏刷新tab页的示例代码
2018/08/14 Javascript
Vue多环境代理配置方法思路详解
2019/06/21 Javascript
vue实现滑动到底部加载更多效果
2020/10/27 Javascript
Python解释执行原理分析
2014/08/22 Python
python通过urllib2获取带有中文参数url内容的方法
2015/03/13 Python
简介Django框架中可使用的各类缓存
2015/07/23 Python
python 将字符串转换成字典dict的各种方式总结
2018/03/23 Python
浅谈Python里面小数点精度的控制
2018/07/16 Python
Pycharm配置远程调试的方法步骤
2018/12/17 Python
Python实现的爬取豆瓣电影信息功能案例
2019/09/15 Python
在pytorch中实现只让指定变量向后传播梯度
2020/02/29 Python
python 错误处理 assert详解
2020/04/20 Python
使用OpenCV获取图片连通域数量,并用不同颜色标记函
2020/06/04 Python
深入研究HTML5实现图片压缩上传功能
2016/03/25 HTML / CSS
Java面试题:请问一下代码输出是什么
2015/05/27 面试题
在校生党员自我评价
2013/09/25 职场文书
创伤外科专业推荐信范文
2013/11/19 职场文书
护士求职推荐信范文
2013/11/23 职场文书
学校节能减排方案
2014/06/13 职场文书
花田少年史观后感
2015/06/16 职场文书
导游词之山东孔庙
2019/11/04 职场文书
Java多线程并发FutureTask使用详解
2022/06/28 Java/Android