[转]百度网盘外链代理0.5(输出百度网盘下载地址)

转自:回味依旧博客

今天在网上搜罗资源时发现某独立博客的一软件下载竟然是直链,话说那博客也不是很有商业气息,怎么玩得起这么多流量,于是就看了下它的直链链接:
http://d.qsmc.info/pan_baidu.php?99272&3674728222
竟然是这样的,细看发现pan_baidu于是就联想到了是不是解析百度网盘的,于是谷歌搜索了下,找到了原作,嘎嘎
是利用php解析的,在这里回味依旧分享给大家。

使用很简单,看下面的说明吧。

百度网盘外链代理php脚本


使用说明
将需要外链的文件上传至 百度网盘(http://pan.baidu.com/)
然后,在需要外链的文件上右键→分享给好友→创建连接→复制链接。
将复制到连接附加到本地址后面(注意加"?"或"/"(使用"/"的前提是空间支持如下写法"*.php/1",BAE不支持该写法))。
例如:你获得的连接为:
http://pan.baidu.com/share/link?shareid=13466&uk=1392760321
则参数为:
pan_baidu.php?shareid=13466&uk=1392760321
pan_baidu.php?s=13466&u=1392760321
pan_baidu.php?s13466u1392760321
pan_baidu.php?13466&1392760321
其中:?可以换为"/"号,前提为空间支持该写法,BAE不支持该写法。
&也可以换为"-/_"任一符号。
末尾可附加文件后缀,如:
pan_baidu.php?13466-1392760321.mp3


更新小史:

8-14更新0.5版本。

1月12日更新0.31版本。
修复无法使用的问题

9月5日更新0.3版本。
修改匹配方式,体积更小。兼容更高。
对于匹配地址,可有多重写法,均可使用。

9月3日 更新0.2版本.
对外开放版本
目前只支持单文件共享的下载。
至于共享目录,不知道应该提供怎样的方式输出。

0.3版本
回味依旧想在这里道一句。。这个是我自己修改的 原作者的0.4版本已经不再发布,本人凭借对php以及正则表达式的皮毛认识做了小修改,现在可以用了!

0.4版本
重构正则表达式代码,这已经不再是qsmc博主的代码了故以去除其版权!免费开放源码下载
下载pan_baidu0.4
0.5版本
重构正则表达式代码,大部分采用奶酪博客,由于百度更新,特殊文件解析不同,故本次更新只支持非图片,非音乐的文件下载,很遗憾
下载pan_baidu0.5

2013-04-20 网友余留香发现再次失效
2013-05-25 参考一网友代码进行修复,修改功能,失效将跳转至百度网盘页面

Read more

[转]AV女优名字大全,你认识几个?

转自:http://blog.4a8a.com/post-206.html

苍井空,川滨奈美,堤莎也加,町田梨乃,二阶堂仁美,饭岛爱,饭田夏帆,饭冢友子,芳本叶月,冈崎结由,冈田丽奈,高木萌 美,高田礼子,高原流美,宫本真美,宫岛司,古都光,光月夜也,河村亚季子,河井梨绪,黑崎扇菜,红月流奈,华歌恋,吉川萌,及川奈央,吉川真奈美,吉崎 纱南,吉野莎莉,今井明日香,今木翔子,金泽蓝子,进藤玲菜,井上可奈,久保美希,酒井未希,臼井利奈,菊池丽香,菊池英里,菊池智子,橘真央,具志坚阳 子,可爱亚织沙,葵小夏,蓝山南,兰望美,里见奈奈子,里美奈奈子,里美由梨香,立花丽华,立木爱,凉白舞,铃川玲理,铃江纹奈,铃木麻奈美,芦屋瞳,麻 川美绪,麻生叶子,美里霞,美崎凉香,美雪沙织,美月莲,明日香,木谷麻耶,奈奈见沙织,内藤花苗,内田理沙,鲇川亚美,片濑亚纪,平山朝香,前原优树, 前原佑子,浅见伽椰,浅井理,青木琳,青木玲,青野诗织,青羽未来,青沼知朝,秋本玲子,秋菜里子,秋元优奈,如月可怜,若林树里,若月树里,森下理音, 纱月结花,杉浦清香,杉山亚来,山下由美子,杉原凉子,上原留华,神城千佳,神崎麻衣,神崎麻子,矢吹丽,手束桃,树本凉子,水城凛,水野朋美,水野茜, 水越丽子,四季彩香寺田弥生,松浦梦,松浦唯,松田千夏,松下爱来,松下可怜,松元静香,速水真保,藤彩香,藤代流花,藤崎秋,藤森智子,天衣美津,田村 麻衣,望月瞳,舞岛美织,午后野弥生,西泽友里,夏美舞,相川未希,相户爱,相田由美,小仓杏,小川流果,筱宫知世,小栗杏菜,小森美王,小室优奈,小野 由佳,筱原凉,小泽菜穗,小泽玛丽亚,筱冢真树子,星爱丽斯,星崎瞳,星野绫香,星野洋子,星野真弥,徐若樱,雪乃小春,岩下美季,遥优衣,野宫美忧,野 原奈津美,叶月千穗,伊东美华,一色丽矢,一色鲇美,一条沙希,乙伊沙也加,樱井沙也加,由树莉莉,有川真生,有吉奈生子,有森玲香,雨宫优衣,原千寻, 原史奈,原田春奈,远野麻耶,月野静玖,早纪麻未,早乙女舞,泽舞音,长濑爱,长月亚美,真木亚里沙,真山润,中川珠代,中村理央,中根由真,中山美玖, 中原绫,仲井美帆,竹田树理,佐伯美奈,佐佐木,幸田梨纱,北原爱子,成膳任,戴文青木,德永千奈美,笛木优子,福原爱,高见美香,高树玛丽亚,宫崎葵, 观月雏乃,海江田纯子,后藤理莎,后藤香南子,矶山沙耶香,矶山沙也加,吉冈美穗,吉泽瞳,加纳则子,加藤小雪,菅谷梨沙子,结城翼,井上和香,井上熏, 酒井瑛里,久纱野水萌,铃木爱理,玲木美生,泷泽乃南,美依旗由美,木下亚由美,前田知惠,前原爱,浅田真央,清水佐纪,入江纱绫,三尺真奈美,三宅尚 子,森下千里,上原绫,石村舞波,矢田亚希子,市川由衣,市井纱耶香,嗣永桃子,松岛菜菜子,松居彩,松元莉绪,樋口真未,细川直美,夏烧雅,相乐纪子, 小川熏,小林惠美,小野奈美,小泽真珠,星野亚希,须藤茉麻,亚纪奈,岩田小百合,伊藤步,优香,友崎玲,中泽裕子,佐藤麻纱,安藤沙耶,奥山唯子,白崎 令于,柏木奈纯,板谷佑,滨田翔子,朝雾唯,川崎爱,大和抚子,大西由梨香,岛田百合花,二宫优,绀野舞子,岗原厚子,高鸠阳子,古河由摩,谷田未央,河 合绫纯美,和久井辛,和希沙,黑田美礼,横仓里奈,后藤亚维梨,户田惠梨香,吉濑美智子,加藤麻依,江纱绫,井上诗织,井上优香,井真理绘,堀井美月,莲 沼民子,柳明日,落合玲奈,牧濑奈美,木下亚由,奈良沙绪理,浅丘南,秋本那夜,秋山玲子,秋庭比吕子,三尺真奈,三井保奈美,森下真理,山吹美花,山口 纱弥加,杉里香,神代弓子,树梨沙,水谷利加,松鸠永里奈,松山麻美,松屿初音,塔山直美,藤香南子,天使美树,天野理惠,田崎由希,桐岛淳子,尾崎美 果,西野美绪,相泽优香,小林里实,小早川洋子,叶山小姬,樱树露衣,樱田佳子,永井绘理香,远藤真纪,早川美波,早川桃香,折原琴,中鸠广香,中泽夏 木,竹野内丰,佐藤江梨花,爱内萌,爱田露美,爱田毛毛,安倍夏实,安原真美,奥山香,八木泽,白川美奈美,白鸟智惠子,白亚朱里,北山静香,北原步,北 原真裕,仓本安奈,仓田杏里,朝比奈真理,朝仓加穗里,朝仓玛丽亚,持田茜,冲田由加里,川奈由依,大友梨奈,岛田香奈,堤沙也加,渡边香,风间舞,风见 京子,福山洋子,冈本夏生,高仓梨奈,高野瞳,宫本瞳,宫本阳子,宫地奈,宫间沙布子,工藤瞳,宫下杏菜,河田纯子,和希结衣,横山千枝,华美月,姬野莉 梦,吉田友里,吉野碧,菅野美寿纪,江口美贵,结衣美沙,金城美丽,井上彩菜,井上雅,鸠村熏,酒井美幸,菊池则江,君岛美香,可爱亚芝莎,来栖敦子,蓝 原夕妃,蛯原舞,立花优,立原贵美,恋野恋,铃木由美,麻生岬,麻生真美子,麻田子,茂森亚弓,美波志保,木内亚吉拉,内田京香,品田由依,平山绫,前岛 美步,前田亚纪,浅见怜,浅野子,青木美里,清木裕子,青山遥,青山叶子,三濑真美子,三崎真绪,三上夕希,三尾安齐,森宏子,森山子,森野雫,山口理 惠,山口美纪,山口萌,杉山圭,杉田惠美,山田誉子,杉原爱砂,上原亚也加,神崎美树,神田美沙纪,圣瑛麻,石川恩惠,石川瞳,石川优季奈,矢吹凉子,矢 吹麻理奈,矢择优子,水城梓,水希遥,松岛奈奈子,松纱良,速水怜,藤井彩,藤崎弭代,田山真美子,田中梨子,田中美久,瞳理欧,望月七,望月沙香,望月 英子,武田真治,夏结玲,相纪美,相乐晴子,相仁泽美,相原里奈,翔巴辉,小池亚弭,小峰由衣,筱宫庆子,小田凉子,小向杏奈,小野濑,幸田李梨,岩崎千 鹤,野宫凛子,野野由利加,叶山路易,一宫理绘,伊藤美沙纪,一条小百合,樱庭凉子,永井流奈,优木里绪奈,优木美纱,羽田夕夏,原惠美子,远山雪乃,远 藤梨奈,早濑理沙,早乙女香织,长谷川,真纯麻子,织原奈美,柊丽子,中条佳奈子,中野美奈,仲村桃,足立美……

Read more

[转]Gravatar:全球通用头像全教程

转自:IT之家

经常在个人博客发评论或者看评论,经常被评论旁边的头像所吸引,经常懊恼于没有自己的头像,经常困惑于不知道怎么设置头像!

经常光顾个人博客的朋友看好了,小编写了一篇教程,你学习设置了以后出入于基于WordPress的个人博客(其实更准确的说是各种web 2.0的服务)中的朋友,来一个全球通用评论头像如何?

Globally Recognized Avatar的缩写,是http://www.gravatar.com推出的一项服务,意为“全球通用头像”。如果在Gravatar的服务器上放置了你自己的头像,那么在任何支持Gravatar的blog或者留言本上留言时,只要提供你与这个头像关联的email地址,就能够显示出你的Gravatar头像来。

  1. 通过浏览器,访问:http://cn.gravatar.com/(这个是中文站)
  2. 访问Gravatar注册账户
  3. 你会看到如图所示,填完你的常用邮箱之后,点击【Signup】:
  4. 填写常用邮箱注册
  5. 你接着会看到如下图所示,说明已经发送到你的邮箱里去了,登入所填写的邮箱:
  6. Gravatar会发送注册确认邮件
  7. 找到一封Welcome to Gravatar的邮件,打开它。找到“To activate your account, simply click on the link below or paste into the url field on your favorite browser”,这句话底下是链接,点击他,毫不犹豫地点击他!
  8. 接着进入界面你会看到,第一个是用户名(提醒:只有小写字母(a - z)和编号是允许的),第二是密码,第三个是确认密码,完成以后点击【Signup】!
  9. 填写用户名和密码
  10. 在接下来出现的页面中,二话不说,点击【Add one by clicking here】开始设置头像:
  11. 点击【Add one by clicking here】设置头像
  12. 选择头像来源,小编推荐使用第一个从本地上传:
  13. 使用第一个从本地上传
  14. 开始剪裁图片,完毕以后点击【Crop and Finish】:
  15. 剪裁图片后点击【Crop and Finish】
  16. 接着进入设置头像等级,推荐G,一般网站都只支持G级别的头像哟!O(∩_∩)O~
  17. 头像等级推荐设置为G级别
  18. 完毕,一般10分钟左右生效,大家快去试试评论效果吧~

小编在网络上找到一些关于使用gravatar时候出现的一些问题以及解答,希望能帮到大家:

  1. 问:注册和找回密码在哪进行?
  2. Gravatar注册 | Gravatar找回密码
  3. 问:注册Gravatar之后,只要是WordPress博客就能看到自己的头像了么?
  4. 答:不一定,这取决于博客主题是否支持了Gravatar的API,幸运的是,目前大多数WordPress博客所使用的主题是支持Gravatar的。
  5. 问:只能在WordPress博客使用Gravatar么?
  6. 答:不是。这主要取决于网站管理者:只要网站能获取你的EMail信息,同时又在展现层使用Gravatar的API,就可以使用。国外一些小的Web2.0公司的产品都是支持Gravatar的。 目前国内貌似对Gravatar的支持有限,虽然国内也有几个不错的博客程序。
  7. 问:用EMail去匹配,又是通过展现层(HTML代码),那会不会泄露我的EMail呢?
  8. 答:不会,因为Gravatar使用的是MD5加密之后的EMail字符串,您完全不必担心您的EMail地址泄露。
  9. 问:为什么我注册之后看不到图像?
  10. 答:因为Gravatar有一个比较长的缓冲周期;注册完之后,并不会立即显示相应图像,现在情况已经得到了很大的改善;但是如果你的头像等级比较不和谐,需要Gravatar的审核,也需要一段时间。
  11. 问:我如果现在注册,之前留言中的头像会显示么?
  12. 答:会,只要提交评论的时候,你使用了同样的EMail地址即会显示
  13. 问:Gravatar目前支持哪些邮箱系统?
  14. 答:以前据说对QQ不支持,但现在QQ邮箱已经引入了这个功能,问题自然解决了。至于其他的邮箱,目前还为遇到不支持的。
  15. 问:如果有人冒充我的邮箱呢?
  16. 答:很现实的问题,但我们要相信,没这么无聊的人,第二,我们要相信博主的人品,因为一旦留言成功,博客的所有者会在后台看到你的邮箱地址,剩下的,就不是你能决定的啦。

Read more

[转]给emlog添加自定义鼠标指针

转自:http://blog.4a8a.com/post-79.html
小编刚刚在Flyer's Blog看到这篇文章,嗯,算是个小技巧这里分享给大家!
在模板ccs表中找到body{}和a:hover{}一般都在开头
在它们中添加body{cursor:url(images/blue.cur),default;} 和a:hover{cursor:url(images/Link.cur), pointer;}
提示:blue.cur和link.cur是指针样式
说明1:第一行是鼠标指针初始形态,第二行是鼠标指针碰到链接的形态。
说明2:你需要两个鼠标指针图片(最好这两个图片是一套或是相近的)。
说明3:鼠标指针的图片格式是.cur和.ani,不是.jpg、.gif或是其它图片格式,这点请注意。
Cursors.zip

Read more

[转]教你如何用代码判断浏览器类型

转自:http://blog.4a8a.com/post-370.html
你知道世界上有多少种浏览器吗?除了我们熟知的IE, Firefox, Opera, Safari四大浏览器之外,世界上还有近百种浏览器。
Google推出的Chrome浏览器。由于Chrome出生名门,尽管他还是个小家伙,没有人敢小看他。以后,咱们常说浏览器的“四大才子”就得改称为“五朵金花”了。
在网站前端开发中,浏览器兼容性问题本已让我们手忙脚乱,Chrome的出世不知道又要给我们添多少乱子。浏览器兼容性是前端开发框架要解决的第一个问题,要解决兼容性问题就得首先准确判断出浏览器的类型及其版本。
JavaScript是前端开发的主要语言,我们可以通过编写JavaScript程序来判断浏览器的类型及版本。JavaScript判断浏览器类型一般有两种办法,一种是根据各种浏览器独有的属性来分辨,另一种是通过分析浏览器的userAgent属性来判断的。在许多情况下,值判断出浏览器类型之后,还需判断浏览器版本才能处理兼容性问题,而判断浏览器的版本一般只能通过分析浏览器的userAgent才能知道。
我们先来分析一下各种浏览器的特征及其userAgent。

IE
只有IE支持创建ActiveX控件,因此她有一个其他浏览器没有的东西,就是ActiveXObject函数。只要判断window对象存在ActiveXObject函数,就可以明确判断出当前浏览器是IE。而IE各个版本典型的userAgent如下:

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2)
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Mozilla/4.0 (compatible; MSIE 5.0; Windows NT)

其中,版本号是MSIE之后的数字。

Firefox
Firefox中的DOM元素都有一个getBoxObjectFor函数,用来获取该DOM元素的位置和大小(IE对应的中是getBoundingClientRect函数)。这是Firefox独有的,判断它即可知道是当前浏览器是Firefox。Firefox几个版本的userAgent大致如下:
Mozilla/5.0 (Windows; U; Windows NT 5.2) Gecko/2008070208 Firefox/3.0.1
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070309 Firefox/2.0.0.3
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070803 Firefox/1.5.0.12

其中,版本号是Firefox之后的数字。

Opera
Opera提供了专门的浏览器标志,就是window.opera属性。Opera典型的userAgent如下:
Opera/9.27 (Windows NT 5.2; U; zh-cn)
Opera/8.0 (Macintosh; PPC Mac OS X; U; en)
Mozilla/5.0 (Macintosh; PPC Mac OS X; U; en) Opera 8.0

其中,版本号是靠近Opera的数字。

Safari
Safari浏览器中有一个其他浏览器没有的openDatabase函数,可做为判断Safari的标志。Safari典型的userAgent如下:
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Version/3.1 Safari/525.13
Mozilla/5.0 (iPhone; U; CPU like Mac OS X) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/4A93 Safari/419.3

其版本号是Version之后的数字。

Chrome
Chrome有一个MessageEvent函数,但Firefox也有。不过,好在Chrome并没有Firefox的getBoxObjectFor函数,根据这个条件还是可以准确判断出Chrome浏览器的。目前,Chrome的userAgent是:
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13

其中,版本号在Chrome之后的数字。
有趣的是,Chrome的userAgent还包含了Safari的特征,也许这就是Chrome可以运行所有Apple浏览器应用的基础吧。
只要了解了以上信息,我们就可以根基这些特征来判断浏览器类型及其版本了。我们会将判断的结果保存在Sys名字空间中,成为前端框架的基本标志信息,供今后的程序来读取。如果判断出谋种浏览器,Sys名字空间将有一个该浏览器名称的属性,其值为该浏览器的版本号。例如,如果判断出IE 7.0,则Sys.ie的值为7.0;如果判断出Firefox 3.0,则Sys.firefox的值为3.0。下面是判断浏览器的代码:

我们把对IE的判断放在第一,因为IE的用户最多,其次是判断Firefox。按使用者多少的顺序来判断浏览器类型,可以提高判断效率,少做无用功。之所以将Chrome放在第三判断,是因为我们预测Chrome很快会成为市场占有率第三的浏览器。其中,在分析浏览器版本时,用到了正则表达式来析取其中的版本信息。
如果你的JavaScript玩得很高,你还可以将前面的判断代码写成这样:
<script type="text/javascript">
    var Sys = {};
    var ua = navigator.userAgent.toLowerCase();
    window.ActiveXObject ? Sys.ie = ua.match(/msie ([\d.]+)/)[1] :
    document.getBoxObjectFor ? Sys.firefox = ua.match(/firefox\/([\d.]+)/)[1] :
    window.MessageEvent && !document.getBoxObjectFor ? Sys.chrome = ua.match(/chrome\/([\d.]+)/)[1] :
    window.opera ? Sys.opera = ua.match(/opera.([\d.]+)/)[1] :
    window.openDatabase ? Sys.safari = ua.match(/version\/([\d.]+)/)[1] : 0;
    
    //以下进行测试
    if(Sys.ie) document.write('IE: '+Sys.ie);
    if(Sys.firefox) document.write('Firefox: '+Sys.firefox);
    if(Sys.chrome) document.write('Chrome: '+Sys.chrome);
    if(Sys.opera) document.write('Opera: '+Sys.opera);
    if(Sys.safari) document.write('Safari: '+Sys.safari);
</script>

这样可以使JavaScript代码更精简些。当然,可读性稍差一些,就看你是重视效率还是重视可维护性了。
使用不同特征来判断浏览器的方法,虽然在速度上比用正则表达式分析userAgent要来的快,不过这些特征可能会随浏览器版本而变化。比如,一种浏览器本来独有的特性取得了市场上的成功,其他浏览器也就可能跟着加入该特性,从而使该浏览器的独有特征消失,导致我们的判断失败。因此,相对比较保险的做法是通过解析userAgent中的特征来判断浏览器类型。何况,反正判断版本信息也需要解析浏览器的userAgent的。
通过分析各类浏览器的userAgent信息,不难得出分辨各类浏览器及其版本的正则表达式。而且,对浏览器类型的判断和版本的判断完全可以合为一体地进行。于是,我们可以写出下面的代码:
<script type="text/javascript">
var Sys = {};
var ua = navigator.userAgent.toLowerCase();
var s;
(s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
(s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
(s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
(s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
(s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
//以下进行测试
if (Sys.ie) document.write('IE: ' + Sys.ie);
if (Sys.firefox) document.write('Firefox: ' + Sys.firefox);
if (Sys.chrome) document.write('Chrome: ' + Sys.chrome);
if (Sys.opera) document.write('Opera: ' + Sys.opera);
if (Sys.safari) document.write('Safari: ' + Sys.safari);
</script>

其中,采用了“... ? ... : ...”这样的判断表达式来精简代码。判断条件是一条赋值语句,既完成正则表达式的匹配及结果复制,又直接作为条件判断。而随后的版本信息只需从前面的匹配结果中提取即可,这是非常高效的代码。
以上的代码都是为了打造前端框架所做的预研,并在五大浏览器上测试通过。今后,判断某种浏览器只需用if(Sys.ie)或if(Sys.firefox)等形式,而判断浏览器版本只需用if(Sys.ie == '8.0')或if(Sys.firefox == '3.0')等形式,表达起来还是非常优雅的。

Read more