我是靠谱客的博主 深情小蚂蚁,最近开发中收集的这篇文章主要介绍易语言实现YY批量自动加好友的代码,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在做yy爬虫的时候,发现yy这个地方没有使用webkit,还在使用ie内核,这样的话我们就可以对它内嵌的浏览器做些什么了。

信息挺好爬的,顺便分析了一下点加好友,加群和关注这几个按钮,发现到最后都是直接与客户端的setCommand方法通信的,我没有办法直接调用它客户端的函数。

使用jquery触发click是一个比较另类的方法,以前觉得别人搞得还挺神奇的,就是没往这方面想。

哦对了,它底层调用的是window.external.setCommand('addFriend',uid)方法,有兴趣的朋友可以研究研究。

常量数据表

.版本 2
.常量 activeCityFriend, "<文本长度: 97>", , $("div[class*='btn-yycity js-btn-yycity active'],div[class*='btn-yycity js-btn-yycity']").click()
.常量 addFriend, "<文本长度: 206>"

批量加好友功能代码

.版本 2
.支持库 spec
.程序集 程序集1
.子程序 BatchAddFriend, , 公开, 批量加好友
.参数 uids, 整数型, 数组
.局部变量 jytb, 网页填表
.局部变量 i, 整数型
.局部变量 uid, 文本型
.局部变量 script, 文本型
jytb.初始化 (GetFindPanel ())
jytb.网页_执行脚本 (#activeCityFriend)
.变量循环首 (1, 取数组成员数 (uids), 1, i)
  uid = uid + 到文本 (uids [i]) + “,”
.变量循环尾 ()
uid = 文本_替换 (uid, 1, 取文本长度 (uid) - 1, , “,”, “”)
script = #addFriend
script = 文本_替换 (script, , , , “{uids}”, uid)
程序_延时 (1000)
jytb.网页_执行脚本 (script)
.子程序 GetAddFriendWindows, , 公开, 获取添加好友窗口句柄数组
.参数 handles, 整数型, 参考 数组
窗口_模糊遍历窗口 (, “QWidget”, “添加联系人”, handles)
.子程序 Arrange, , 公开, 排列窗口
.参数 handles, 整数型, 数组
.局部变量 rect, 精易_矩形
.局部变量 right_offs, 整数型
.局部变量 top_offs, 整数型
.局部变量 i, 整数型
窗口_置位置和大小 (handles [1], 0, 0)
rect = 窗口_取位置和大小 (handles [1])
right_offs = 0
.变量循环首 (2, 取数组成员数 (handles), 1, i)
  right_offs = right_offs + rect.右边
  窗口_置位置和大小 (handles [i], 0, right_offs)
.变量循环尾 ()
.子程序 Input, , 公开, 输入内容
.参数 handles, 整数型, 数组
.参数 text, 文本型
.局部变量 i, 整数型
.局部变量 handle, 整数型
.局部变量 rect, 精易_矩形
.变量循环首 (1, 取数组成员数 (handles), 1, i)
  handle = handles [i]
  rect = 窗口_取位置和大小 (handle)
  .如果真 (rect.底边 = 280)
    窗口_激活 (handle)
    鼠标_消息 (handle, 110, 125)
    程序_延时 (200)
    文本_投递 (handle, text)
    程序_延时 (200)
    鼠标_消息 (handle, 365, 260)
  .如果真结束
  窗口_关闭 (handle)
.变量循环尾 ()
.子程序 GetFindPanel, 整数型, , 本子程序采用【精易编程助手】生成,成功返回窗口句柄,失败返回0
.局部变量 局_句柄, 整数型
局_句柄 = 窗口_取句柄 (, , “QWidget”, “查找”)
.如果真 (局_句柄 = 0)
  返回 (0)
.如果真结束
局_句柄 = 窗口_取句柄 (局_句柄, , “YYBROWSER_AXCONTAINER”, “YYIE”)
.如果真 (局_句柄 = 0)
  返回 (0)
.如果真结束
局_句柄 = 窗口_取句柄 (局_句柄, , “Shell Embedding”, 字符 (0))
.如果真 (局_句柄 = 0)
  返回 (0)
.如果真结束
局_句柄 = 窗口_取句柄 (局_句柄, , “Shell DocObject View”, 字符 (0))
.如果真 (局_句柄 = 0)
  返回 (0)
.如果真结束
局_句柄 = 窗口_取句柄 (局_句柄, , “Internet Explorer_Server”, 字符 (0))
.如果真 (局_句柄 = 0)
  返回 (0)
.如果真结束
调试输出 (局_句柄)
返回 (局_句柄)

YY自动加好友的代码

实现此功能需要加载精易模块5.6和精易VIP模块 V4.31

.版本 2
.程序集 窗口程序集_启动窗口
.程序集变量 handles, 整数型, , "0"
.子程序 _BatchAddFriend按钮_被单击
.局部变量 users, 整数型, , "0"
加入成员 (users, 99984964)
加入成员 (users, 999684876)
加入成员 (users, 998943844)
加入成员 (users, 99746075)
加入成员 (users, 997411860)
BatchAddFriend (users)
.子程序 _GetAddFriendWindows按钮_被单击
GetAddFriendWindows (handles)
Arrange (handles)
.子程序 _Input按钮_被单击
Input (handles, “Hello world!”)

运行结果:

总结

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

最后

以上就是深情小蚂蚁为你收集整理的易语言实现YY批量自动加好友的代码的全部内容,希望文章能够帮你解决易语言实现YY批量自动加好友的代码所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(104)

评论列表共有 0 条评论

立即
投稿
返回
顶部