有一个需求,通过一个脚本获得一个名单,然后我需要在一个微信群中一个个 @这个名单上的人。尝试过自己构造符合微信 @要求的字符串 @xx @xxx @xxxx
这种,但是复制到微信消息框里然后发出去没有效果,有什么办法可以解决吗?
1
dream7758522 2021-01-08 09:03:16 +08:00 via Android
字符一个一个的粘贴进去
|
2
Maxxxxyu 2021-01-08 09:03:50 +08:00 via iPhone
需要 @微信号吧,反正企业微信这么弄是没问题的
|
3
MasterCai OP |
4
kokutou 2021-01-08 10:38:42 +08:00
autohotkey send 函数吧
|
5
kokutou 2021-01-08 10:40:10 +08:00
autohotkey 写个脚本, 逐个处理下字串, send 发送, 检测输入了 @xxx 后遇到空格就回车, 这样应该可以.
|
6
musi 2021-01-08 11:23:55 +08:00 via iPhone
肯定不能直接艾特名字,不然一个群里两个名字一样的人怎么办?一起艾特了?
|
7
yolee599 2021-01-08 11:37:40 +08:00
微信输入 @ 之后会弹出一个列表,需要选择的,估计在选择的时候附加了用户唯一标识到消息里。如果没有这个唯一标识群里有两个昵称一样的人怎么办?
|
8
wuweijia 2021-01-08 11:40:21 +08:00
做不到
|
9
MasterCai OP |
10
xiaojiqiaozhi 2021-01-08 12:19:26 +08:00 via Android
@MasterCai MAC 有个微信小助手,源码在 github 可以找到,改造改造应该能满足你的需求
|
11
musi 2021-01-08 12:41:11 +08:00 via iPhone
@yolee599 你要在微信方考虑,你新拉的群用户怎么给你保证昵称不相同?因为艾特人的逻辑是微信实现的不是你实现的
|
12
auroraccc 2021-01-08 13:07:14 +08:00
微信的 @联系人里有特殊的零宽标识符,你直接粘贴一个 @xxx 他是识别不了的,只会认为你是一个普通文本。要实现你这个功能你得弄到他真正的 @联系人的格式。
|
13
yolee599 2021-01-08 13:35:42 +08:00
|
14
kidlj 2021-01-08 13:40:58 +08:00 via iPhone
识别 @ 是有交互逻辑的,微信从粘贴板识别到的文字,把这块交互逻辑给禁掉了,所以没办法。
就好比服务会把用户提交的内容做 html/sql escape 一样,是一种安全策略。 |
15
Drumming 2021-01-08 13:43:51 +08:00
[at=wxid_XXXX]测试艾特标识
PC 版的是这样的... |
16
MasterCai OP @xiaojiqiaozhi 好的谢谢,我看一下
@auroraccc @yolee599 我明白这个意思,所以我就是想问一下有没有人知道这个格式。。 @kidlj 好吧,那我试一下一个个字符的粘贴能不能行 |
17
icyalala 2021-01-08 14:43:33 +08:00
不是说你能保证你自己微信群里昵称都不同就 OK,微信自己肯定要处理昵称相同的 AT,所以肯定不能直接用文本内容匹配。
所以 AT 对应的 ID 甚至都不是保存在文本里的,微信会自己记录输入框相关的 meta,你除非 hook 微信本身的程序或者通信数据,不然只在文本内容上做文章是做不到的。 |
18
dingdangnao 2021-01-08 14:56:16 +08:00
就跟群里有人发 @所有人 实际上什么作用都没有 一个意思
|
19
dream7758522 2021-01-09 09:49:41 +08:00 via Android
你既然用脚本了,不会弄一个逐字输入的脚本吗
|