服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - 易语言 - 易语言实现163邮箱登录获取邮件列表等操作的代码

易语言实现163邮箱登录获取邮件列表等操作的代码

2022-02-20 15:51易语言源码贝贝吧 易语言

今天小编就为大家分享一篇关于易语言实现163邮箱登录获取邮件列表等操作的代码,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

常量数据表

?
1
2
3
4
.版本 2
.常量 提交参数, "<文本长度: 98>"
.常量 协议头, "<文本长度: 386>"
.常量 邮件post, "<文本长度: 383>"

全局变量表

?
1
2
3
4
.版本 2
.全局变量 全_Cookies, 文本型
.全局变量 sid, 文本型
.全局变量 全_Email, 文本型

登陆程序集

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
.版本 2
.程序集 窗口程序集_启动窗口
.子程序 _登陆按钮_被单击
.局部变量 文本, 文本型
.局部变量 post, 文本型
.局部变量 b, 文本型
.局部变量 aaa, 文本型
.局部变量 协议头, 文本型
全_Cookies = 网页_取Cookie (“mail.163.com”, )
文本 = 编码_Utf8到Ansi (网页_访问_对象 (“https://reg.163.com/logins.jsp?username=” + 邮箱编辑框.内容 + “&password=” + 密码编辑框.内容 + “&url=http://mail.163.com/entry/cgi/ntesdoor”, , , 全_Cookies, b, , aaa))
全_Cookies = 网页_Cookie合并更新 (全_Cookies, b)
文本 = 编码_Utf8到Ansi (网页_访问_对象 (“http://mail.163.com/entry/cgi/ntesdoor?username=” + 邮箱编辑框.内容, , , 全_Cookies, b, , aaa, , 真))
全_Cookies = 网页_Cookie合并更新 (全_Cookies, b)
sid = 文本_取出中间文本 (网页_取单条Cookie (全_Cookies, “Coremail”, 真), “%”, “%”)
.判断开始 (sid ≠ “”)
  全_Email = 邮箱编辑框.内容
  信息框 (“登录成功”, 0, )
  载入 (窗口1, , 假)
  _启动窗口.销毁 ()
.默认
  信息框 (“登录失败”, 0, )
.判断结束

获取邮件列表等操作的代码

此功能需要加载精易模块5.6

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
.版本 2
.支持库 EThread
.支持库 iext
.支持库 RegEx
.支持库 spec
.程序集 窗口程序集_窗口1
.程序集变量 json, 类_json
.程序集变量 邮箱列表, 文本型, , "0"
.子程序 _窗口1_创建完毕
启动线程 (&读取邮件, , )
.子程序 读取邮件
.局部变量 post, 文本型
.局部变量 文本, 文本型
.局部变量 i, 整数型
.局部变量 索引, 整数型
.局部变量 发送者, 文本型
.局部变量 发件者Email, 文本型
post = “fid=1&start=0&limit=20&thread=false”
文本 = 编码_Utf8到Ansi (网页_访问 (“http://mail.163.com/jy6/xhr/list/list.do?sid=” + sid, 1, post, 全_Cookies, , , , ))
json.解析 (文本)
.计次循环首 (json.成员数 (“data”), i)
  索引 = 超级列表框1.插入表项 (, 到文本 (i), , , , )
  超级列表框1.置标题 (索引, 1, 文本_取出中间文本 (json.取通用属性 (“data[” + 到文本 (i - 1) + “].mid”, 真), #引号, #引号))
  超级列表框1.置标题 (索引, 2, 文本_取出中间文本 (json.取通用属性 (“data[” + 到文本 (i - 1) + “].subject”, 真), #引号, #引号))
  发件者Email = 文本_取出中间文本 (json.取通用属性 (“data[” + 到文本 (i - 1) + “].from”, 真), “<”, “>”)
  发送者 = 文本_取出中间文本 (json.取通用属性 (“data[” + 到文本 (i - 1) + “].from”, 真), “\” + #引号, “\”)
  .如果 (发送者 = “”)
    超级列表框1.置标题 (索引, 3, 文本_取出中间文本 (json.取通用属性 (“data[” + 到文本 (i - 1) + “].from”, 真), #引号, “@”))
  .否则
    超级列表框1.置标题 (索引, 3, 发送者)
  .如果结束
  .如果 (发件者Email = “”)
    超级列表框1.置标题 (索引, 4, 文本_取出中间文本 (json.取通用属性 (“data[” + 到文本 (i - 1) + “].from”, 真), #引号, #引号))
  .否则
    超级列表框1.置标题 (索引, 4, 发件者Email)
  .如果结束
  超级列表框1.置标题 (索引, 5, 时间_格式化 (到时间 (时间_时间戳转文本 (json.取通用属性 (“data[” + 到文本 (i - 1) + “].receivedDate”, 真))), “yyyy-MM-dd ”, “HH:mm:ss”, 真))
.计次循环尾 ()
.子程序 html元素过滤, 文本型, 公开, By:wangzeixi
.参数 欲过滤的文本, 文本型
.参数 是否过滤特殊符号, 逻辑型, 可空, 默认为假 假则过滤 如:&nbsp; &lt;等 有些可能不支持哈!
.局部变量 正则, 正则表达式
.局部变量 计次, 整数型
.局部变量 搜索结果, 搜索结果, , "0"
.局部变量 结果, 文本型
结果 = 欲过滤的文本
正则.创建 (“<[^>]*>”, 假)
搜索结果 = 正则.搜索全部 (欲过滤的文本)
.计次循环首 (取数组成员数 (搜索结果), 计次)
  结果 = 子文本替换 (结果, 搜索结果 [计次].取匹配文本 (欲过滤的文本, ), “”, , 1, 真)
.计次循环尾 ()
.如果真 (是否过滤特殊符号 = 假)
  结果 = 子文本替换 (结果, “&nbsp;”, “ ”, , , 真)
  结果 = 子文本替换 (结果, “&lt;”, “<”, , , 真)
  结果 = 子文本替换 (结果, “&gt;”, “>”, , , 真)
  结果 = 子文本替换 (结果, “&amp;”, “&”, , , 真)
  结果 = 子文本替换 (结果, “&quot;”, #引号, , , 真)
  结果 = 子文本替换 (结果, “&ensp;”, “ ”, , , 真)
  结果 = 子文本替换 (结果, “&emsp;”, “ ”, , , 真)
  结果 = 子文本替换 (结果, “&ldquo;”, #左引号, , , 真)
  结果 = 子文本替换 (结果, “&rdquo;”, #右引号, , , 真)
  结果 = 子文本替换 (结果, “&mdash;”, “—”, , , 真)
  结果 = 子文本替换 (结果, “&hellip;”, “…”, , , 真)
  结果 = 子文本替换 (结果, “\r\n”, #换行符, , , 真)
  结果 = 子文本替换 (结果, “\n”, “ ”, , , 真)
  结果 = 子文本替换 (结果, “\r”, “ ”, , , 真)
  结果 = 子文本替换 (结果, “\t”, “ ”, , , 真)
.如果真结束
返回 (结果)
.子程序 _超级列表框1_被双击, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型
.局部变量 文本, 文本型
.局部变量 json, 类_json
文本 = 编码_Utf8到Ansi (网页_访问 (“http://mail.163.com/jy6/xhr/msg/read.do?sid=” + sid, 1, “mid=” + 超级列表框1.取标题 (超级列表框1.现行选中项, 1) + “&filterImages=false&markRead=true”, 全_Cookies, , , , ))
json.解析 (文本)
信息框 (html元素过滤 (json.取通用属性 (“data.text.body”, 真)), 0, 超级列表框1.取标题 (超级列表框1.现行选中项, 2))
网页_置Cookie1 (“http://mail.163.com/js6/read/readhtml.jsp?mid=” + 超级列表框1.取标题 (超级列表框1.现行选中项, 1) + “=15&color=064977”, 全_Cookies)
.子程序 _发送按钮_被单击
发送邮件 (收件人编辑框.内容, 主题编辑框.内容, 内容编辑框.内容)
.子程序 发送邮件
.参数 邮箱, 文本型
.参数 邮件标题, 文本型
.参数 邮件内容, 文本型
.局部变量 文本, 文本型
.局部变量 post, 文本型
.局部变量 协议头, 文本型
post = 文本_替换 (#邮件post, , , , “时间戳”, 时间_取现行时间戳 (), “标题”, 邮件标题, “接收名称”, 文本_取左边 (邮箱, “@”), “接收邮箱”, 邮箱, “内容”, 邮件内容)
post = 文本_替换 (post, , , , “发送名称”, 文本_取左边 (全_Email, “@”), “发送者Email”, 全_Email)
协议头 = 文本_替换 (#协议头, , , , “长度”, 到文本 (取文本长度 (post)), “标识”, 全_Cookies)
文本 = 编码_Utf8到Ansi (网页_访问_对象 (“http://mail.163.com/jy6/xhr/compose/compose.do?action=DELIVER&sid=” + sid, 1, post, 全_Cookies, , 协议头))
调试输出 (全_Cookies)
调试输出 (文本)
.判断开始 (寻找文本 (文本, “S_OK”, , 假) ≠ -1)
  信息框 (“发送成功”, 0, )
.默认
  信息框 (“发送失败”, 0, )
.判断结束
.子程序 _刷新列表按钮_被单击
超级列表框1.全部删除 ()
启动线程 (&读取邮件, , )
.子程序 _群发按钮_被单击
.局部变量 文本, 文本型
文本 = 到文本 (读入文件 (取运行目录 () + “\邮箱列表.txt”))
邮箱列表 = 分割文本 (文本, #换行符, )
启动线程 (&群发邮件, , )
.子程序 群发邮件
.局部变量 文本, 文本型
.局部变量 post, 文本型
.局部变量 协议头, 文本型
.局部变量 i, 整数型
.计次循环首 (取数组成员数 (邮箱列表), i)
  post = 文本_替换 (#邮件post, , , , “时间戳”, 时间_取现行时间戳 (), “标题”, 时间_取随机时间戳 () + 主题编辑框.内容 + 时间_取随机时间戳 (), “接收名称”, 文本_取左边 (邮箱列表 [i], “@”), “接收邮箱”, 邮箱列表 [i], “内容”, 时间_取随机时间戳 () + 内容编辑框.内容 + 时间_取随机时间戳 ())
  post = 文本_替换 (post, , , , “发送名称”, 文本_取左边 (全_Email, “@”), “发送者Email”, 全_Email)
  协议头 = 文本_替换 (#协议头, , , , “长度”, 到文本 (取文本长度 (post)), “标识”, 全_Cookies)
  文本 = 编码_Utf8到Ansi (网页_访问_对象 (“http://mail.163.com/jy6/xhr/compose/compose.do?action=DELIVER&sid=” + sid, 1, post, 全_Cookies, , 协议头))
  .判断开始 (寻找文本 (文本, “S_OK”, , 假) ≠ -1)
    输出调试文本 (邮箱列表 [i] + “ 发送成功”) ' 信息框 (“发送成功”, 0, , )
  .默认
    输出调试文本 (文本)
    输出调试文本 (邮箱列表 [i] + “ 发送失败”) ' 信息框 (“发送失败”, 0, , )
  .判断结束
  延时 (1000)
.计次循环尾 ()

运行结果:

易语言实现163邮箱登录获取邮件列表等操作的代码

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接

延伸 · 阅读

精彩推荐
  • 易语言一步一步跟我学易语言之第二个易程序菜单设计

    一步一步跟我学易语言之第二个易程序菜单设计

    今天小编就为大家分享一篇关于的一步一步跟我学易语言之第二个易程序菜单设计,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要...

    易语言帮助手册7092021-06-17
  • 易语言一步一步跟我学易语言之关于变量

    一步一步跟我学易语言之关于变量

    今天小编就为大家分享一篇关于一步一步跟我学易语言之关于变量,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随...

    易语言帮助手册10822021-06-17
  • 易语言易语言在画板中写出指定文本当画板中已满会自动滚屏

    易语言在画板中写出指定文本当画板中已满会自动滚屏

    今天小编就为大家分享一篇关于易语言在画板中写出指定文本当画板中已满会自动滚屏,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,...

    易语言帮助手册9092022-01-12
  • 易语言易语言设置进度条边框样式的方法

    易语言设置进度条边框样式的方法

    今天小编就为大家分享一篇关于易语言设置进度条边框样式的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随...

    易语言帮助手册4422022-01-20
  • 易语言实例操作易语言载入窗口

    实例操作易语言载入窗口

    在本文中小编给大家整理的是关于易语言载入窗口的教程和步骤内容,需要的可以跟着学习下...

    易语言教程网19162022-03-02
  • 易语言易语言关于程序进程和线程的基础知识

    易语言关于程序进程和线程的基础知识

    今天小编就为大家分享一篇关于易语言关于程序进程和线程的基础知识,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起...

    三叶资源网6662022-02-24
  • 易语言易语言获取指定磁盘的名称

    易语言获取指定磁盘的名称

    今天小编就为大家分享一篇关于易语言获取指定磁盘的名称,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来...

    易语言帮助手册12662022-01-04
  • 易语言易语言生成exe文件的方法

    易语言生成exe文件的方法

    在本篇内容中小编给大家分享的是关于易语言生成exe文件的方法知识点,需要的朋友们参考下。...

    易语言教程网14792022-03-01