用php实现百度网盘图片直链的代码分享


Posted in PHP onNovember 01, 2012

第一种代码:代码量较少
通过正则表达式获取百度网盘的文件真实地址,来实现直链的效果

将下面的代码保存为downbd.php

<?php 
$canshu=$_SERVER["QUERY_STRING"]; 
if($canshu=="") 
{ 
die("文件不存在"); 
} 
else 
{ 
$wangzhi="http://pan.baidu.com/share/link?".$canshu; 
$file=file_get_contents($wangzhi); 
$pattern='/a><a class="dbtn cancel singledbtn" href=(.*?)id="downFileButtom">/i'; 
preg_match_all($pattern,$file,$result); 
$tempurl=implode("",$result[1]); 
$fileurlt=str_replace("\"","",$tempurl); 
$fileurl=str_replace("&","&",$fileurlt); 
header("location:$fileurl"); 
} 
?>

调用方法:

http://***/downbd.php?shareid=00000&uk=00000
主要是?shareid=00000&uk=00000这样的格式

第二种:

做了一个小功能,准备放在博客里分享图片。

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

<?php 
require_once('snoopy.class.php'); 
//http://www.abc.com/bdp.php?shareid=29160&uk=2855065916 
$url = 'http://pan.baidu.com/share/link?shareid=' . $_GET['shareid'] . '&uk=' . $_GET['uk']; 
$snoopy = new Snoopy(); 
$snoopy -> read_timeout = 0; 
$snoopy -> fetch($url); 
$n = $snoopy -> results; 
$regex = '/(_.src=")(.+)(";)/'; 
$match = ''; 
preg_match($regex, $n, $match); if(preg_match('/.gif/', $match[2])){ 
header("Content-type: image/gif"); 
imagegif(imagecreatefromgif($match[2])); 
}elseif(preg_match('/.jpg/', $match[2])){ 
header("Content-type: image/jpeg"); 
imagejpeg(imagecreatefromjpeg($match[2])); 
}elseif(preg_match('/.png/', $match[2])){ 
header("Content-type: image/png"); 
imagepng(imagecreatefrompng($match[2])); 
}elseif(preg_match('/.wbmp/', $match[2])){ 
header("Content-type: image/vnd.wap.wbmp"); 
imagewbmp(imagecreatefromwbmp($match[2])); 
}else{} 
?>

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' /> 使用
PHP 相关文章推荐
Phpbean路由转发的php代码
Jan 10 PHP
php5 图片验证码实现代码
Dec 11 PHP
用PHP实现递归循环每一个目录
Aug 08 PHP
php 中英文语言转换类
Sep 07 PHP
使用php将某个目录下面的所有文件罗列出来的方法详解
Jun 21 PHP
smarty中post用法实例
Nov 28 PHP
PHP将HTML转换成文本的实现代码
Jan 21 PHP
又十个超级有用的PHP代码片段
Sep 24 PHP
PHP实现仿百度文库,豆丁在线文档效果(word,excel,ppt转flash)
Mar 10 PHP
php实现带读写分离功能的MySQL类完整实例
Jul 28 PHP
弹出模态框modal的实现方法及实例
Sep 19 PHP
PHP迭代器和生成器用法实例分析
Sep 28 PHP
php curl 伪造IP来源的实例代码
Nov 01 #PHP
php中将指针移动到数据集初始位置的实现代码[mysql_data_seek]
Nov 01 #PHP
php eval函数用法 PHP中eval()函数小技巧
Oct 31 #PHP
php eval函数用法总结
Oct 31 #PHP
PHP5下$_SERVER变量不再受magic_quotes_gpc保护的弥补方法
Oct 31 #PHP
php图片加中文水印实现代码分享
Oct 31 #PHP
php中防止恶意刷新页面的代码小结
Oct 31 #PHP
You might like
php 修改zen-cart下单和付款流程以防止漏单
2010/03/08 PHP
PHP中使用数组实现堆栈数据结构的代码
2012/02/05 PHP
解析Win7 XAMPP apache无法启动的问题
2013/06/26 PHP
php curl模拟post提交数据示例
2013/12/31 PHP
php模拟post上传图片实现代码
2016/06/24 PHP
PHP性能测试工具xhprof安装与使用方法详解
2018/04/29 PHP
PHP批斗大会之缺失的异常详解
2019/07/09 PHP
javascript/jquery获取地址栏url参数的方法
2014/03/05 Javascript
浅谈Jquery为元素绑定事件
2015/04/27 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
2015/11/04 Javascript
jQuery插件datatables使用教程
2016/04/21 Javascript
Bootstrap网格系统详解
2016/04/26 Javascript
快速解决js动态改变dom元素属性后页面及时渲染的问题
2016/07/06 Javascript
使用JQuery选择HTML遍历函数的方法
2016/09/17 Javascript
基于Vue2的独立构建与运行时构建的差别(详解)
2017/12/06 Javascript
微信小程序实现页面跳转传值以及获取值的方法分析
2017/12/18 Javascript
关于express与koa的使用对比详解
2018/01/25 Javascript
实例讲解Vue.js中router传参
2018/04/22 Javascript
原生JS+HTML5实现的可调节写字板功能示例
2018/08/30 Javascript
vuex 解决报错this.$store.commit is not a function的方法
2018/12/17 Javascript
python爬取cnvd漏洞库信息的实例
2019/02/14 Python
Python+OpenCV图像处理—— 色彩空间转换
2020/10/22 Python
对Pytorch 中的contiguous理解说明
2021/03/03 Python
HTML5 canvas基本绘图之填充样式实现
2016/06/27 HTML / CSS
计算机学生求职信范文
2014/01/30 职场文书
护理专科毕业自荐信范文
2014/04/21 职场文书
2014年师德师风学习材料
2014/05/16 职场文书
2014年爱国卫生工作总结
2014/11/22 职场文书
汽车销售助理岗位职责
2015/04/14 职场文书
仓库管理制度范本
2015/08/04 职场文书
2016年十一促销广告语
2016/01/28 职场文书
高三数学教学反思
2016/02/18 职场文书
2016学校先进党组织事迹材料
2016/02/29 职场文书
nginx如何将http访问的网站改成https访问
2021/03/31 Servers
python+opencv实现视频抽帧示例代码
2021/06/11 Python
MySQL系列之一 MariaDB-server安装
2021/07/02 MySQL