再改外链转换工具

作者:matrix 发布时间:2014年2月4日星期二 分类:零零星星

感觉以前的界面按钮有些小,正好改成3.0.3的css前端框架试试~。

web app新界面

>>外链转换工具

资源 :

Bootstrap中文网: http://www.bootcss.com/  里面各种开源,各种介绍~

百度CDN公共库:http://developer.baidu.com/wiki/index.php?title=docs/cplat/libs

用的其中Bootstrap v3.0.3:http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css

UI变动: 阅读剩余部分 »

修改外链转换工具

作者:matrix 发布时间:2014年1月15日星期三 分类:零零星星

图片4734-修改外链转换工具

参考凉手抚温柔的代码修改此>>外链转换工具

变动:

添加ajax post数据提交,不支持js的浏览器是扛不动了。

度娘网盘遍历3层文件夹的文件信息。最多显示第二层300个,第三层200个文件,第一层就没试过。太多了的话那没法了。此功能出于本人某些情况下片考虑,无实际意义。:)

文件夹结构太复杂的,遍历起来那就真心慢。

度娘网盘的外链就只能下载,干其他没法的。

微云:解决BAE上没法下载多文件打包的问题。

微云解析源码>>微云网盘php解析源码_更新

ajax 代码参考至凉手抚温柔:http://www.ifoouu.com/note/73.html,在此感谢!
他的站已经熄火,这里给个他的外链工具源码(BAE2.0):
http://pan.baidu.com/s/1nt9J5bV

MP3:TEST 阅读剩余部分 »

更新百度网盘外链方法_无数据库缓存_仅供测试

作者:matrix 发布时间:2013年12月4日星期三 分类:兼容并蓄 零零星星

测试地址:

http://link.hhtjim.com

采用最新的本人无数据库缓存10min,绝对不靠谱,仅供测试!

警告:以下内容属于充字数类型且杂乱无章,需要外链功能的请戳上面的地址~

上个月,百度网添加了验证码功能导致以前抓取外链的方法都失效。度娘终于爆发了~

刚开始还没注意到验证码的存在,只要一连几次下载文件就会出现验证码窗口

验证码窗口

经过N次的文件下载,看到了度娘的脾气。

也就只允许你前3次下载免验证码,后面你要下载的话那就只有手动输入了。

抓到某个下载地址:

http://small.cdn.baidupcs.com/file/2c808f328bec8fa44d5ac5e2e42985d2?xcode=e0ad680ebd95ea801d4878451d04d36328f07d27337bcbfd0b2977702d3e6764
&fid=1178024267-250528-2238604782
&time=1386087754
&sign=FDTAXER-DCb740ccc5511e5e8fedcff06b081203-w%2FMs%2B2m13ixmrRpD2s11F01H6b4%3D
&to=sc
&fm=Q,B,U,nc
&expires=1386088354
&rt=sh
&r=860261331
&logid=2869754983&sh=1&vuk=3238236832
&fn=文件名

上面的fid、time、sign还能从页面处找到,有些参数根本就看不到。

time和expires参数都是unix时间戳,后者的意思是过期时间。时间相差600秒,也就10分钟。

在这10分钟之内这个地址都是有效的, 😉  那就有点头绪了。

抓取页面的必备参数,获取下载地址,再用session会话缓存那个下载地址,10分钟内有效或者再自动检测。

最爽的是第一次弄免数据库缓存,庆幸书上有session会话的相关章节  哈哈。

再手动下载几次就抓到了获取下载地址的URL:

http://pan.baidu.com/share/download?bdstoken=null&uk=&shareid=&fid_list=[]&sign=&timestamp=

看到那几个参数,笑了~

之后就是好几天的编写、测试下载,期间有看书整了个最基本的类 。 额  面向对象 。

源码就暂时为空。

提醒的是度娘这回要检测referer,跟360云盘一样的只能外链下载无法外链播放。自己试试就晓得~

所以我把link.hhtjim.com页面的那个下载按钮去掉了 ,TMD浏览器发送当前URl的referer是没法改的。无语啊~

先放个测试期间最早版本的cookies缓存源码:

<?php  
error_reporting(0);//禁用错误报告  
  function curl_get($url,$post=false,$carry_header=true,$REFERER_=false,$useragent=false,$add_arry_header=null){  
        $ch=curl_init($url);  

        if($carry_header){  
            curl_setopt($ch, CURLOPT_HTTPHEADER, array('User-Agent:Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_1_2 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7D11 Safari/528.16'));  
        }  
        if($add_arry_header){  
            curl_setopt($ch, CURLOPT_HTTPHEADER, $add_arry_header);  
        }  
        if ($post) {  
            curl_setopt($ch, CURLOPT_POSTFIELDS, $post);  
        }  
        if($REFERER_){  
            curl_setopt($ch, CURLOPT_REFERER,$REFERER_);  
        }  
        if($useragent){  
            curl_setopt($ch, CURLOPT_USERAGENT, $useragent);  
        }  

        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
        $get_url = curl_exec($ch);  
        curl_close($ch);  
        return $get_url;  
    }  

preg_match('|u=(.*)|',$_SERVER["REQUEST_URI"],$bai_res);  
$bai_=curl_get($bai_res[1]);  

preg_match('|shareid=\"(\d+)\"\?\"\1\":\"\";FileUtils\.uk=\"(\d+)\"\?\"\2\"|',$bai_, $ui); 
preg_match('|fs_id\D+(\d+)\D+app_id|',$bai_,$fid); 
preg_match('|timestamp=\"(\d+)\"|',$bai_,$time); 
preg_match('|downloadsign=\"(\w+)\"|',$bai_,$login); 
$diz="http://pan.baidu.com/share/download?bdstoken=null&uk=$ui[2]&shareid=$ui[1]&fid_list=[$fid[1]]&sign=$login[1]&timestamp=$time[1]&bdstoken=null&channel=chunlei&clienttype=0&web=1";  
$header[]= 'Cookie: BAIDUID=*****';    //请使用自个儿的百度ID,度娘会检查这个的cookies

if(isset($_COOKIE["du$ui[2]-$ui[1]"])){ 
//header( "Location: $_COOKIE["du$ui[2]-$ui[1]"]"); 
echo $_COOKIE["du$ui[2]-$ui[1]"]; 
}else{ 
$dl=curl_get($diz,null,$header,$bai_res[1],null,$header); 
$obj=json_decode($dl,true); 
if($obj['errno']!='0'){ 
//header( "Location: $bai_res[1]"); 
echo $bai_res[1]; 
} 
setcookie("du$ui[2]-$ui[1]",$obj['dlink'],time()+3600*24); 
//header( "Location: $obj['dlink']");  
echo $obj['dlink'];  
}  
?>  

这个能不能用就靠你怎么使了,仅是原理。

如果你即刻需要外链,请到http://link.hhtjim.com玩玩~

祝你好运!

博客也快一个月都没有更新了,不码点字不好~

整理外链转换工具-陆续加强版

作者:matrix 发布时间:2013年10月14日星期一 分类:兼容并蓄 零零星星

图片4802-整理外链转换工具-陆续加强版

地址:http://link.hhtjim.com

说明:

外链转换没有永久的,请酌情使用!!

链接地址可自动识别并相应的简单处理,有的显示文件名以及后缀。

链接地址可不用输入HTTP://,如果没有HTTP://会自动添加在链接开头位置。

将就各种奇葩,自动去掉空格,URL后面的/,有些还有报错提示。

支持的链接格式:

百度网盘:

http://pan.baidu.com/s/13isoZ

http://pan.baidu.com/share/link?shareid=3760603697&uk=3238236832

虾米音乐:

http://www.xiami.com/song/1772222342

http://www.xiami.com/song/33112?spm=a1z1s.3521865.23309997.2.RAsL1F

http://www.xiami.com/song/play?ids=/song/playlist/id/1772222342/object_name/default/object_id/0

程序的死的,如果没有得到那个ID它会开小差,所以建议你手动获取id,其他相同外链同理

转换后的直链地址形如:

http://link.hhtjim.com/xiami/音乐ID.mp3

Songtaste音乐:

http://www.songtaste.com/song/262121

http://songtaste.com/song/262121

一听音乐:

http://www.1ting.com/player/f4/player_944464.html

新浪微盘:

http://vdisk.weibo.com/s/zb_f-vRa57H7-

金山快盘:

http://www.kuaipan.cn/file/id_9732344353166091.htm

360云盘:

http://ajvvqzy2v8.l29.yunpan.cn/lk/QXJ786DeBjeiW

http://yunpan.cn/QXJ786DeBjeiW

......

想着把这个web app放到bae上速度会很快,但bae伪静态跟普通空间的.htaccess文件设置伪静态不同

需要在BAE的根目录新建app.conf文件,添加相应的伪静态规则。

BAE:

handlers:
  - expire : .jpg modify 10 years
  - expire : .swf modify 10 years
  - expire : .png modify 10 years
  - expire : .gif modify 10 years
  - expire : .JPG modify 10 years
  - expire : .ico modify 10 years

  - url : /bdwl/((.*)/(.*)/.*\..* 
    script : /d.php?/$1/$2

  - url : /xiami/(.*)\.mp3
    script : /wailian.php?xiaurl=http://www.xiami.com/song/$1
  - url : /st/(.*)\.mp3
    script : /wailian.php?sturl=http://songtaste.com/song/$1
  - url : /yt/(.*)/(.*)\.wma
    script : /wailian.php?yt=http://www.1ting.com/player/$1/player_$2.html
  - url : /vp/(.*)/.*\..*
    script : /wailian.php?vp=http://vdisk.weibo.com/s/$1
  - url : /jins/(.*)/.*\..*
    script : /wailian.php?jins=http://www.kuaipan.cn/file/id_$1.htm

比较.htaccess文件:

RewriteRule ^bdwl/([0-9]+)/([0-9]+)/([\s\S]+)\.([a-zA-Z0-9]+)?$ /d.php/$1/$2 [L]  
RewriteRule ^xiami/([0-9]+)\.mp3?$ /wailian.php?xiaurl=http://www.xiami.com/song/$1 [L]
RewriteRule ^st/([0-9]+)\.mp3?$ /wailian.php?sturl=http://songtaste.com/song/$1 [L]  
RewriteRule ^yt/(\w+)/([0-9]+)\.wma?$ /wailian.php?yt=http://www.1ting.com/player/$1/player_$2.html [L]  
RewriteRule ^vp/([\w-]+)/([\s\S]+)\.([a-zA-Z0-9]+)?$ /wailian.php?vp=http://vdisk.weibo.com/s/$1 [L]  
RewriteRule ^jins/(\d+)/([\s\S]+)\.([a-zA-Z0-9]+)?$ /wailian.php?jins=http://www.kuaipan.cn/file/id_$1.htm [L]

这个小工具其实早就在国庆期间弄出来了,一直都是出于自用阶段。博客的空间也换了,完全没有以前天翼云vps 的高响应速度,就一直拖着。

这才整理之前的外链转换工具:虾米、songtaste、百度网盘,还添加金山快盘、一听音乐的php外链。此工具代码参考于度娘或者谷歌,部分来自ifoouu.com。感谢分享!

 

修改百度云外链文件名以及后缀抓取以及外链程序

作者:matrix 发布时间:2013年9月7日星期六 分类:兼容并蓄 零零星星

添加自动识别百度外链的文件名以及后缀 中抓取页面标题的方式有点落后,这次稍微修改,使用关于正则匹配的函数。

相关代码:

$fp = file_get_contents($quurlXX);//$quurlXX为百度网盘地址  
preg_match_all ("/title\>.*\<\/title/",$fp,$titleList, PREG_PATTERN_ORDER);//使用preg_match_all正则匹配数据并保存到$titleList数组中  
//echo $titleList[0][0] ;  
$zhuaqian=strpos($titleList[0][0],"title>");  
$zhuahou=strpos($titleList[0][0],"_免费高速下载|百度云 网盘-分享无限制");  
$xinzhi=substr($titleList[0][0],6,$zhuahou-6); //取适当的两个位置中间的值也就是文件名  
$zz = 'http://www.hhtjim.com/bdwl/'.$urlcode.'/'.$uk.'/'.$xinzhi;  
echo $zz;  

这次抓取的话相对于以前要好些了,除非度娘又把文件名后面的那一串串“_免费高速下载|百度云 网盘-分享无限制”给改了,要不我这又失效了。

bapi.php下载:

http://www.400gb.com/file/29243856

http://pan.baidu.com/share/link?shareid=1490940073&uk=3238236832


这次又调整 外链程序到v0.3。之前用的奶酪博客首发解析百度网盘 V3.1 直链下载 ,后来发现 破博客 的 百度网盘音乐外链源码 更简单实用。

更新提取百度网盘下载链接:

if(isset($_GET['baiu'])){  
$baiduURL=explode("?baiu=",$_SERVER["REQUEST_URI"]);//取?baiu=后面的百度网盘链接地址  
$bai_url = $baiduURL[1];  
$bai_src = file_get_contents($bai_url);  

preg_match('|MusicPlayer\("(.*)"|U', $bai_src, $bai_res);//匹配源码里面的下载地址并跳转  
$bai_songurl = $bai_res[1];  
preg_match('|dlink\\\":\\\"(.*)\\\"|U', $bai_src, $bai_res); 
$bai_songurl = str_replace("\\\\", "", $bai_res[1]); 
header("location:$bai_songurl");  
}  

说明:相关代码来自破博客的 百度网盘音乐外链源码 。

将上面代码保存到php文件中,执行示例:/*.php?baiu=百度网盘分享地址(支持新老版本)

添加自动识别百度外链的文件名以及后缀

作者:matrix 发布时间:2013年9月5日星期四 分类:兼容并蓄

图片4889-添加自动识别百度外链的文件名以及后缀

以前的百度网盘外链不能自动识别文件名以及后缀,这次添加此功能。

这次就算是v0.3版本了

v0.3版本更新修改原来百度网盘转换链接的接口,增加接口中显示文件名以及后缀。技术很低,只有玩玩这种活。

接口地址:http://d.hhtjim.com/bapi.php

用法:http://d.hhtjim.com/bapi.php?url=网盘分享地址

例如:http://d.hhtjim.com/bapi.php?url=http://pan.baidu.com/share/link?shareid=2053194229&uk=3238236832

返回:https://www.hhtjim.com/bdwl/2053194229/3238236832/20130726170450.jpg

再来个外链测试:

阅读剩余部分 »

百度网盘外链应用再升级

作者:matrix 发布时间:2013年8月28日星期三 分类:兼容并蓄 零零星星

新版本地址:http://d.hhtjim.com/bai.html

10-14更新转换地址:http://link.hhtjim.com

百度网盘外链应用再升级

 

 

这次又是借着itiyun.com童鞋的源码来完美晋升到了精简漂亮的界面。

旧版本就有点落后+难看死了。。。

新版下载:http://www.400gb.com/file/28753605

旧版:http://www.400gb.com/file/28753662

可查看>>

借用baidu-pan-proxy升级百度网盘外链应用

 

.htaccess伪静态实现外链地址静态化

作者:matrix 发布时间:2013年8月16日星期五 分类:兼容并蓄 零零星星

.htaccess伪静态实现外链地址静态化

借用baidu-pan-proxy升级百度网盘外链应用 提到了百度网盘的外链

https://www.hhtjim.com/bdwl.php?/get/2053194229/3238236832类似于这种外链地址总有点不爽。

利用apache服务器的rewrite编写规则就可以实现外链地址的静态化(带伪字):

https://www.hhtjim.com/bdwl/2053194229/3238236832  类似于这种的  很爽~

步骤: 阅读剩余部分 »