php 模拟登录163邮箱,PHP模拟登陆163邮箱发邮件及获取通讯录列表的方

本文实例讲述了PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法。分享给大家供大家参考。具体实现方法如下:

代码如下:

header("Content-Type: text/html; charset=UTF-8");

error_reporting(0);

/**

* 登陆

* $user 163用户名

* $pass 密码

**/

function login($user,$pass){

//登陆

$url = 'http://reg.163.com/logins.jsp?type=1&url=http://entry.mail.163.com/coremail/fcg/ntesdoor2?lightweight%3D1%26verifycookie%3D1%26language%3D-1%26style%3D-1';

$cookie = tempnam('./cache/','~');//创建一个用于存放cookie信息的临时文件

$fields_post = array(

'username' => $user,

'password' => $pass,

'verifycookie' => 1,

'style' => -1,

'product' => 'mail163',

'selType' => -1,

'secure' => 'on'

);

$fields_string = '';

foreach($fields_post as $key => $value){

$fields_string .= $key . '=' . $value . '&';

}

$fields_string = rtrim($fields_string , '&');

$headers = array(

'User-Agent' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9) Gecko/2008052906 Firefox/3.0',

'Referer' => 'http://www.163.com'

);

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//返回结果存放在变量中,而不是默认的直接输出

curl_setopt($ch, CURLOPT_HEADER, true);

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 120);

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);//关闭连接时,将服务器端返回的cookie保存在以下文件中

curl_setopt($ch, CURLOPT_POST, true);

curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);

$result= curl_exec($ch);

curl_close($ch);

preg_match_all('/

(.*?) /i', $result,$infos,PREG_SET_ORDER);

if(!empty($infos['0']['1'])){

unlink($cookie);

exit('');

}else{

$G_ROOT = dirname(__FILE__);

file_put_contents($G_ROOT.'/cache/cookie', $cookie);

return $cookie;

}

}

/**

*

* $data['url'] 请求地址

* $data['data_post'] post数据

* $data['cookie']

*

**/

function curl($data){

$url = $data['url'];

$data_post= $data['data_post']? $data['data_post']: false;

$cookie = $data['cookie'];

$headers = array(

'User-Agent' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9) Gecko/2008052906 Firefox/3.0',

'Referer' => 'http://www.163.com'

);

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_HEADER, true);

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 120);

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);

curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie); //cookie文件 登陆之后

//POST 提交

if($data_post){

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data_post);

}

$result = curl_exec($ch);

curl_close($ch);

return $result;

}

希望本文所述对大家的php程序设计有所帮助。

/php/20106.htmlwww.phpzy.comtrue/php/20106.htmlTechArticlePHP模拟登陆163邮箱发邮件及获取通讯录列表的方法 这篇文章主要介绍了PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法,实例分析了php实用curl模拟登陆163邮箱的操作技巧,具有一定参考...

相关文章

暂无相关文章

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/302714.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网址收藏

http://www.xdowns.com/ 绿色软件下载转载于:https://blog.51cto.com/guailele/851308

mini api

大部分主流语言都支持web框架,并且实现起来相对轻便,简捷,比如:go的gin包package main import "github.com/gin-gonic/gin" func main() {r : gin.Default()r.GET("/ping", func(c *gin.Context) {c.JSON(200…

qt交叉编译环境搭建方法

(一)准备工作1、下载最新版本的Qt 4.7.2: http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.2.tar.gz2、安装交叉编译器4.3.3或其它版本3、编译tslib-1.4.1.tar.bz2,这个东西是触摸屏库,编译QT4.7…

edge robert matlab,哪位熟悉matlab的大神路过瞄一眼哈

cxfx(believe truth believe me)UID240430帖子100精华积分1755蛋蛋币1755 枚威望0BT积分0阅读权限60性别男在线时间125 小时注册时间2013-3-27鸵鸟蛋主楼大中小发表于 2013-5-13 21:30 只看该作者哪位熟悉matlab的大神路过瞄一眼哈求大神指点迷津那!谁来帮着看一下这…

朋友来网易面试,挂了~

阅读本文大概需要8分钟。最近推荐一个朋友来网易面试,这哥们在小厂工作6年,研发经验非常丰富,但他却挂在了技术终面。事后和他约了个饭,深聊了一次发现他的技术成长路径还是有点问题。软件开发行业需要经验,需要时间来…

php 图片 3d旋转图片,html5实现图片的3D旋转效果

我们先来看一下实现效果:(学习视频分享:html视频教程)H5旋转3D相册,鼠标放置暂停,图片灰度级为0,有放大效果。该实例运用H5和CSS3动画效果,未用javascript。提高了本人对CSS3 新属性的了解及掌握。完整代码…

初级运维工程师面试题总结

该面试题结合了上海龙旗,土豆网,上海激动网络,风之云,广典集团,旅行者传媒等等,有些面试题还在进一步完善之中,希望给想步入运维行业的朋友们一点点帮助,加油!1)Linux启动大致过程&a…

数据这么多,且看R语言怎么处理!

随着科技的不断进步,数据处理量的不断增大,对数据进行处理、分析、统计建模、数据挖掘以及可视化的重要性日渐突出。如果说有一门简单易学、通俗易懂并且集上述功能为一体的编程语言让科研人员从中解脱出来,R语言当仁不让。作为一种统计分析软…

MYSQL数据库表大小计算,计算mysql数据库数据表的大小,不精确,只是大略的数据...

SHOW TABLE STATUS dbname返回数组:Name: xxx (表名)Engine: MyISAM (表引擎)Version: 10 (版本)Row_format: Dynamic (行格式)Rows: (表内总行数)Avg_row_length: (平均每行大小,这里是4.7K)Data_length: (该表总大小,单位字节)Max_data_len…

乘风破浪,.Net Core遇见Dapr,为云原生而生的分布式应用运行时

Dapr是一个由微软主导的云原生开源项目,国内云计算巨头阿里云也积极参与其中,2019年10月首次发布,到今年2月正式发布V1.0版本。在不到一年半的时间内,github star数达到了1.2万,超过同期的kubernetes、istio、knative等…

催人泪下!一个程序员的悲惨故事

全世界有3.14 % 的人已经关注了数据与算法之美编辑:大数据二狗如果你喜欢这篇文章,就把它发给朋友看吧~精品课程推荐:选购数学科普正版读物严选“数学思维好物”送给孩子的益智礼物 | 办公室神器算法工程师成长阅读 | 居家高科技理工…

php分目录存放session,phpsession实现多级目录存放实现代码,phpsession_PHP教程

php session实现多级目录存放实现代码,phpsession当一个目录下有很多文件时,服务器的处理性能会变低,php默认的session仅仅存放在/tmp目录下,未进行分级,当有一定的访问量时,就存在性能问题了。首先&#x…

erlang 编译之 to_core

感谢 坚强2002 同学的推荐 http://www.it.uu.se/research/group/hipe/cerl/ main.erl-module(main). -export([start/0]).start() ->ok. c(main, to_core). 会产生中间代码文件 main.core 打开如下 main.coremodule main [module_info/0,module_info/1,start/0]attributes […

C# Action用法

Action是无返回值的泛型委托可以使用 Action<T1, T2, T3, T4> 委托以参数形式传递方法&#xff0c;而不用显式声明自定义的委托。封装的方法必须与此委托定义的方法签名相对应。也就是说&#xff0c;封装的方法必须具有四个均通过值传递给它的参数&#xff0c;并且不能返…

python让函数抛出异常,是否有任何对象可以使str()函数在python中抛出错误或异常?...

我有一个函数,要求输入是一个字符串.我知道我可以断言或检查输入类型,但我想尽可能地处理它.我有以下代码来处理它.但我想知道是否有任何情况,这一行可以抛出我需要处理的异常.def foo(any_input):clean_input str(any_input) # will this throw any exception or error?proc…

双十一,单身狗除了买买买,还能做什么?

躲得过618&#xff0c;躲得过1024终究躲不过双十一小天相信&#xff0c;肯定有很多的小伙伴正磨刀霍霍对准自己的手这个节日小天陪你们买买买&#xff01;11月6~13日超级数学建模携手网易云课堂“超级充电节”为大家带来多重惊喜&#xff0c;福利享不停&#xff01;趁此机会赶紧…

将 SharePoint 开发与其他形式的开发进行比较

从三个视点检查 SharePoint 开发很有用&#xff1a; 为 .NET Framework 构建可扩展的应用程序 构建数据库应用程序 构建传统的富客户端应用程序将 SharePoint 应用程序与可扩展的 .NET Web 应用程序进行比较 您可以从开发人员的角度检查 SharePoint 开发&#xff0c;该开发人员…

Visual Studio 2022这些重大更新,影响每一位.NET开发者!

难得五一长假&#xff0c;蹲家里盘点了一下这2年.NET的发展&#xff0c;可谓日新月异&#xff0c;重现辉煌&#xff0c;各种重磅更新接踵而至&#xff1a;1 .NET Core3.1各种最受欢迎、性能排行等榜单霸榜&#xff0c;3个月增加100w的关注者&#xff1b;2 .NET5让.NET Framewor…

父与子一起学python3,父与子的编程之旅 与小卡特一起学Python 第3版(全彩印刷)...

章 出发吧 11.1 安装Python 11.2 从IDLE启动Python 21.3 来点指令吧 31.4 与Python交互 51.5 该编程了 71.6 运行你的个程序 91.7 如果出现问题 101.8 你的第二个程序 12第2章 记住内存和变量 152.1 输入、处理、输出 152.2 名字 172.3 名字里是什么 212.4 数字和字符串 222.5 …

影响计算机算法世界的十位大师

全世界有3.14 % 的人已经关注了数据与算法之美1、伟大的智者——Don E.Knuth&#xff0c;中文名&#xff1a;高德纳(1938-)算法和程序设计技术的先驱者。Oh,God!一些国外网站这样评价他。一般说来&#xff0c;不知道此人的程序员是不可原谅的。其经典著作《计算机程序设计艺术》…