如何使剪切板上的“@xxx”内容粘贴到微信中可以正确 @

2021-01-08 08:58:29 +08:00
 MasterCai

有一个需求,通过一个脚本获得一个名单,然后我需要在一个微信群中一个个 @这个名单上的人。尝试过自己构造符合微信 @要求的字符串 @xx @xxx @xxxx 这种,但是复制到微信消息框里然后发出去没有效果,有什么办法可以解决吗?

3410 次点击
所在节点    程序员
19 条回复
dream7758522
2021-01-08 09:03:16 +08:00
字符一个一个的粘贴进去
Maxxxxyu
2021-01-08 09:03:50 +08:00
需要 @微信号吧,反正企业微信这么弄是没问题的
MasterCai
2021-01-08 10:34:30 +08:00
@dream7758522 这样和我自己手动输入也没啥区别了吧。。
@Maxxxxyu 好吧,普通微信没效果,@微信号也不行
kokutou
2021-01-08 10:38:42 +08:00
autohotkey send 函数吧
kokutou
2021-01-08 10:40:10 +08:00
autohotkey 写个脚本, 逐个处理下字串, send 发送, 检测输入了 @xxx 后遇到空格就回车, 这样应该可以.
musi
2021-01-08 11:23:55 +08:00
肯定不能直接艾特名字,不然一个群里两个名字一样的人怎么办?一起艾特了?
yolee599
2021-01-08 11:37:40 +08:00
微信输入 @ 之后会弹出一个列表,需要选择的,估计在选择的时候附加了用户唯一标识到消息里。如果没有这个唯一标识群里有两个昵称一样的人怎么办?
wuweijia
2021-01-08 11:40:21 +08:00
做不到
MasterCai
2021-01-08 12:13:18 +08:00
@kokutou macos 好像没有 autohotkey 工具。。但是你这个思路我大概明白了,谢谢
@musi
@yolee599 可以保证群里所有人的备注都不相同,而且就算用微信号也不行,感觉应该不是这个问题
xiaojiqiaozhi
2021-01-08 12:19:26 +08:00
@MasterCai MAC 有个微信小助手,源码在 github 可以找到,改造改造应该能满足你的需求
musi
2021-01-08 12:41:11 +08:00
@yolee599 你要在微信方考虑,你新拉的群用户怎么给你保证昵称不相同?因为艾特人的逻辑是微信实现的不是你实现的
auroraccc
2021-01-08 13:07:14 +08:00
微信的 @联系人里有特殊的零宽标识符,你直接粘贴一个 @xxx 他是识别不了的,只会认为你是一个普通文本。要实现你这个功能你得弄到他真正的 @联系人的格式。
yolee599
2021-01-08 13:35:42 +08:00
@MasterCai #9
@musi #11

我的意思就是微信的逻辑是我们看不到的,肯定是有用唯一标识的,不是简单的输入字符串
kidlj
2021-01-08 13:40:58 +08:00
识别 @ 是有交互逻辑的,微信从粘贴板识别到的文字,把这块交互逻辑给禁掉了,所以没办法。

就好比服务会把用户提交的内容做 html/sql escape 一样,是一种安全策略。
Drumming
2021-01-08 13:43:51 +08:00
[at=wxid_XXXX]测试艾特标识

PC 版的是这样的...
MasterCai
2021-01-08 13:44:56 +08:00
@xiaojiqiaozhi 好的谢谢,我看一下
@auroraccc
@yolee599
我明白这个意思,所以我就是想问一下有没有人知道这个格式。。
@kidlj 好吧,那我试一下一个个字符的粘贴能不能行
icyalala
2021-01-08 14:43:33 +08:00
不是说你能保证你自己微信群里昵称都不同就 OK,微信自己肯定要处理昵称相同的 AT,所以肯定不能直接用文本内容匹配。

所以 AT 对应的 ID 甚至都不是保存在文本里的,微信会自己记录输入框相关的 meta,你除非 hook 微信本身的程序或者通信数据,不然只在文本内容上做文章是做不到的。
dingdangnao
2021-01-08 14:56:16 +08:00
就跟群里有人发 @所有人 实际上什么作用都没有 一个意思
dream7758522
2021-01-09 09:49:41 +08:00
你既然用脚本了,不会弄一个逐字输入的脚本吗

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/742762

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX