百度网盘图片直链的php解析代码

化为网盘有个直链功能,不过需要钱买。我有百度网盘,不过百度的网盘外链不能在网页里直接使用图片 化为的直链功能可以做到。百度哪天也能有这功能就好了。
做了一个小功能,准备放在博客里分享图片。

看代码吧!代码存为bdp.php

 1 <?php
 2 
 3 require_once('snoopy.class.php');
 4 
 5 //http://www.abc.com/bdp.php?shareid=29160&uk=2855065916
 6 
 7 $url = 'http://pan.baidu.com/share/link?shareid=' . $_GET['shareid'] .'&uk=' . $_GET['uk'];
 8 
 9 $snoopy = new Snoopy();
10 
11 $snoopy -> read_timeout = 0;
12 
13 $snoopy -> fetch($url);
14 
15 $n = $snoopy -> results;
16 
17 $regex = '/(_.src=")(.+)(";)/';
18 
19 $match = '';
20 
21 preg_match($regex, $n, $match);
22 
23  
24 
25 if(preg_match('/.gif/', $match[2])){
26 
27 header("Content-type: image/gif");
28 
29 imagegif(imagecreatefromgif($match[2]));
30 
31 }elseif(preg_match('/.jpg/', $match[2])){
32 
33 header("Content-type: image/jpeg");
34 
35 imagejpeg(imagecreatefromjpeg($match[2]));
36 
37 }elseif(preg_match('/.png/', $match[2])){
38 
39 header("Content-type: image/png");
40 
41 imagepng(imagecreatefrompng($match[2]));
42 
43 }elseif(preg_match('/.wbmp/', $match[2])){
44 
45 header("Content-type: image/vnd.wap.wbmp");
46 
47 imagewbmp(imagecreatefromwbmp($match[2]));
48 
49 }else{}
50 
51 ?>

 

 
snoopy.class.php是一个php类,用来模仿web浏览器的功能,它能完成获取网页内容和发送表单的任务。这个文件可以搜一下。以上文件需要一个支持PHP的空间。百度网盘上传图片并发布分享,取得分享地址后的 shareid=29160&uk=2855065916 参数。 
使用 http://你的域名/bdp.php?shareid=29160&uk=2855065916 得到图片,这个地址可以放在CKEditor图像地址中使用。其它编辑器应该也可以。 
网页中直接 <img src='http://你的域名/bdp.php?shareid=29160&uk=2855065916' /> 使用
 
 
百度网盘邀请链接:
http://yun.baidu.com/disk/beinvited?uk=1077068281&third=15
 
posted @ 2013-07-25 15:50  编程狂热者  阅读(1115)  评论(0编辑  收藏  举报