找回密码
 注册
【阿里云】2核2G云新老同享 99元/年,续费同价华为云精选云产品特惠做网站就用糖果主机Jtti,新加坡服务器,美国服务器,香港服务器
查看: 2328|回复: 22

把126邮箱当下载中心(类似Gmail to HTML) 0.21版本

[复制链接]
发表于 2005 年 6 月 12 日 14:08:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
  演示

http://ayeah.199mb.com/126.php

作者站点:


http://ayeah.info/

  1. <?php
  2. ///////////////////////
  3. // 126.com 信箱共享
  4. // ver: 0.21
  5. // date: 2005-05-17
  6. //
  7. // 安装说明:
  8. // 1. 在web使用界面下创建一个文件夹
  9. // 2. 留意该文件夹的链接,如[url]http://m142.mail.126.com/coremail/fcg/ldapapp?funcid=mails&sid=BAzOaVKskuhAAcEW&fid=1116136394[/url]
  10. //    &fid=........ 为要获得的fid值
  11. // 3. 将欲共享的文件放到该新建文件夹下即可;
  12. //
  13. // 使用说明:
  14. // 1. 程序不带参数运行,显示附件列表
  15. // 2. 参数g,如[url]http://your.host.name/126.php?g=abc.rar[/url],直接下载abc.rar文件
  16. //    注:遇同名文件附件,下载新近文件
  17. //
  18. // 注意事项:
  19. // 1. 一封邮件只能附带一个附件
  20. // 2. 目前只能读取文件夹内第一页的邮件,可适当增加:每页最多显示邮件数
  21. // 3. 为保安全,不要用该信箱存放重要资料
  22. //
  23. // 更新记录:
  24. // 2005-05-17 v0.21 修正固定链接下载的错误,感谢shawn@ccf
  25. // 2005-05-16 v0.2  添加固定链接下载功能
  26. // 2005-05-15 v0.1
  27. //
  28. //
  29. // 声明:本程序仅作为学习、测试用途,不保证安全,请勿滥用。敬请通过正常方式使用信箱,保障双方权益。
  30. //////////////////////////////////////////////
  31. /////////////////////////////////////////////
  32. $user = "";        // 126.com mailbox username, exp. peter
  33. $password = "";  // your password.
  34. $fid = "";
  35. ///////////////////////
  36. ////////////////////// DO NOT MODIFY BELOW ////////////////////////
  37. ////////////////////// 莫更改下述内容 /////////////////////////////
  38. /////// Step.1 Login ////////////////
  39. $host = "entry.126.com";
  40. $predata = "POST /cgi/login?language=0&style=-1 HTTP/1.1\r\nHost: ".$host."\r\n";
  41. $postdata = "domain=126.com&language=0&bCookie=&user=".$user."&pass=".$password."&style=-1&enter.x=%B5%C7%A1%A1%C2%BC";
  42. $subdata = "Referer: [url]http://www.126.com/[/url]\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: ".strlen($postdata)."\r\n\r\nData found after header end:\r\n\r\n".$postdata."\r\n";
  43. $getText = conn($host, $predata, $subdata);
  44. preg_match("/Location: http:\/\/(.*?)\.mail\.126\.com.*sid=(.*)\r\n/i", $getText, $match1);
  45. /////////
  46. // Array
  47. // (
  48. //     [0] => Location: [url]http://m151.mail.126.com/cgi/ldapapp?funcid=main&sid=WAyamYHPWRYAMBZd[/url]
  49. //     [1] => m151
  50. //     [2] => WAyamYHPWRYAMBZd
  51. // )
  52. ///////////////////////
  53. /////// Step.2 Share Mailbox ////////////////
  54. $host = $match1[1].".mail.126.com";
  55. $predata = "GET /coremail/fcg/ldapapp?funcid=mails&sid=".$match1[2]."&fid=".$fid." HTTP/1.1\r\nHost: ".$host."\r\n";
  56. $subdata = "\r\n";
  57. $getText = conn($host, $predata, $subdata);
  58. $getText = substr($getText, strpos($getText, "<!--邮件内容部分start-->"), strpos($getText, "<!--内容部分end-->") - strpos($getText, "<!--邮件内容部分start-->"));
  59. $getText = str_replace("\r\n", " ", $getText);
  60. preg_match_all("/div class=\"list4\".*?(mid=.*?)&fid=.*?>(.*?)<\/a> <\/div/", $getText, $match2, PREG_SET_ORDER);
  61. ///////////
  62. // Array
  63. // (
  64. //     [0] => Array
  65. //         (
  66. //             [1] => mid=1tbiXASnz0Jwx1CAvwAAs%252B%520A92%250A8388762%250A1116077941
  67. //             [2] => test
  68. //         )
  69. //     [1] => Array
  70. //         (
  71. //             [1] => mid=1tbiUxqDW0I5bgwXZgAAsb%250A83%520A8346%250A1116077941
  72. //             [2] => photo
  73. //         )
  74. //     ......
  75. //     [n] =>
  76. // )
  77. /////////////////////////////////
  78. /////// Step.3 Get Attachment Url ////////////////
  79. $attach = 1;
  80. foreach ($match2 as $att) {
  81.        $predata = "GET /coremail/fcg/ldmsapp?funcid=readlett&sid=".$match1[2]."&".$att[1]."&fid=".$fid."&ord=0&desc=1&start=0&tempname=onepageread.htm HTTP/1.1\r\nHost: ".$host."\r\n";
  82.        $getText = conn($host, $predata, $subdata);
  83.        $getText = substr($getText, strpos($getText, "打开:"), strpos($getText, "<font color=\"blue\">下载</font>") - strpos($getText, "打开:"));
  84.        preg_match("/lettsid=(.*)&mid.*filename=(.*)&download/", $getText, $match3);
  85.        $attachment[$attach]['title'] = $att[2];
  86.        $attachment[$attach]['mid'] = $att[1];
  87.        $attachment[$attach]['filename'] = $match3[2];
  88.        $attachment[$attach]['lettsid'] = $match3[1];
  89.        $attach ++;
  90. }
  91. //////////
  92. // Array
  93. // (
  94. //     [1] => Array
  95. //         (
  96. //             [title] => test
  97. //             [mid] => mid=1tbiXASnz0Jwx1CAvwAAs%252B%520A92%250A8388762%250A1116077941
  98. //             [filename] => 426755.jpg
  99. //             [lettsid] => BBILPwAaKBDAmiUo
  100. //         )
  101. //
  102. //     [2] => Array
  103. //         (
  104. //             [title] => photo
  105. //             [mid] => mid=1tbiUxqDW0I5bgwXZgAAsb%250A83%520A8346%250A1116077941
  106. //             [filename] => 20050408.rar
  107. //             [lettsid] => BBILPwAaKBDAmiUo
  108. //         )
  109. //
  110. // )
  111. ////////////////////////////////////////
  112. /////// Step.4 Display ////////////////
  113. if ($_GET['g']) {
  114.        foreach($attachment as $item) {
  115.                if ($item['filename'] == trim($_GET['g'])) {
  116.                        header("Location: http://".$host."/coremail/fcg/ldmsapp/".$item['filename']."?lettsid=".$item['lettsid']."&".$item['mid']."&funcid=readpart&part=3&filename=".$item['filename']."&download=1");
  117.                        exit;
  118.                }
  119.        }
  120.        print "File Not Found.\n";
  121.        exit;
  122. } else {
  123.        $attach = 1;
  124.        print "声明:本程序仅作为学习、测试用途,不保证安全,请勿滥用。敬请通过正常方式使用信箱,保障双方权益。<br /><br />";
  125.        foreach($attachment as $item) {
  126.                $attachurl = "http://".$host."/coremail/fcg/ldmsapp/".$item['filename']."?lettsid=".$item['lettsid']."&".$item['mid']."&funcid=readpart&part=3&filename=".$item['filename']."&download=1";
  127. //////// 输入式样 ////////////////////////
  128.                print $attach.". <a href=\"".$attachurl."\">".$item['title']." => ".$item['filename']."</a><br />\n";
  129. ///////////////////////////////
  130.                
  131.                $attach ++;
  132.        }
  133. }
  134. ////////////////////////////////////////
  135. function conn($host, $predata, $subdata) {
  136.        $text = null;
  137.        $data="User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.7) Gecko/20050414 Firefox/1.0.3\r\n";
  138.        $data.="Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n";
  139.        $data.="Accept-Language: en-us,en;q=0.5\r\nAccept-Encoding: gzip,deflate\r\nAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n";
  140.        $data.="Keep-Alive: 300\r\nConnection: Close\r\n";
  141.        $alldata = $predata.$data.$subdata;
  142. //        print $alldata."\n";
  143.        $start_time = time();
  144.        $fp=fsockopen($host, 80, $errno, $errstr, 5);
  145.        if (!$fp) {
  146.                die("Connect Timeout.\n");
  147.        } else {
  148.                socket_set_blocking($fp, True);
  149.                socket_set_timeout($fp, 5);
  150.                
  151.                fputs($fp, $alldata);
  152.                while (!feof($fp)) {
  153.                        $text .= fread($fp, 2000);
  154.                        $diff = time() - $start_time;
  155.                        if ($diff > 24) {
  156.                                die("Timeout!\n");
  157.                        }
  158.                        $status = socket_get_status($fp);
  159.                        if ($status['timed_out']) {
  160.                                die("Stream Timeout!\n");
  161.                        }
  162.                }
  163.        }
  164.        fclose($fp);
  165.        return $text;
  166. }
  167. ?>
复制代码


                               
登录/注册后可看大图
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
发表于 2005 年 6 月 12 日 14:09:28 | 显示全部楼层
【腾讯云】2核2G云服务器新老同享 99元/年,续费同价
楼主接pm呵呵
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2005 年 6 月 12 日 14:10:07 | 显示全部楼层
斑竹出来射精拉
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2005 年 6 月 12 日 14:10:07 | 显示全部楼层
这样也可以啊!!
那不是爽死了吗!!
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2005 年 6 月 12 日 14:11:58 | 显示全部楼层
老黑宣布:楼猪是偶的偶像
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

 楼主| 发表于 2005 年 6 月 12 日 14:12:28 | 显示全部楼层
8是 偶写的

偶是转贴
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2005 年 6 月 12 日 14:16:31 | 显示全部楼层
【腾讯云】2核2G云服务器新老同享 99元/年,续费同价
速度怎么样
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2005 年 6 月 12 日 14:18:44 | 显示全部楼层
下面是引用疏林阁于2005-06-12 14:12发表的:
8是 偶写的

偶是转贴
分享就是美   亲你一个 [s:2]  [s:2]
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

发表于 2005 年 6 月 12 日 16:00:31 | 显示全部楼层
晕~网易的速度还可以的说....
偶另存一般都150K+的
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

ctnet 该用户已被删除
发表于 2005 年 6 月 24 日 13:35:09 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
Jgwy.Com - Free Web Hosting Guide & Directory In China since 2001! Jgwy.Net-Jglt.Net
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|金光论坛

GMT+8, 2024 年 11 月 20 日 23:19 , Processed in 0.129428 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表