文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
作者: 故事胶片
PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取
http://note.youdao.com/noteshare?id=3054cce4add8a909e784ad934f956cef
注意:须有一个可以登录网页版的微信号
可以在 微信网页版 登录一下查看
很多管理大量微信社群的小伙伴都有这样的场景,当微信群的人数达到100人之后,将不能在通过分享的群二维码加入群里,必须自主添加好友后,手动去邀请才能加用户拉入群众,如果有大量的用户加群,就只能一个一个手动的拉,想想心情就很美丽,手动哭泣。。。。
2、准备工作
1、一台不关机的电脑 OR 一台服务器
2、 安装以下相关依赖(有的不需要)
1 #coding=utf8 2 import requests 3 from requests import exceptions 4 from urllib.request import urlopen 5 from bs4 import BeautifulSoup 6 from urllib.parse import urlencode 7 from threading import Timer 8 import re 9 from wxpy import * 10 import schedule 11 import time 12 import http 13 import json 14 import datetime 15 import random 16 import os 17 import ctypes
3、一个能够在网页版微信登录的账号(重要)
4、该微信创建群聊,并保存通讯录中(重要)
3、代码部分
3.1、注册机器人
1 bot = Bot(cache_path=True,console_qr = 2) 2 bot.enable_puid(‘wxpy_puid.pkl‘) 3 rebot = bot.groups().search(‘Goodog‘) // 需要加入
的群
3.2、自动通过好友后发送的加群提示
1 allText = ‘回复关键词加群: \n\n1、羊毛(加入羊毛优惠群)\n2、py(加入机器人体验群)\n3、互粉(加入公众号互粉群)\n4、更多群敬请期待\n\n -PS: 如果回复关键字无效,请耐心等待手工拉入。‘
3.3、自动通过好友请求
1 @bot.register(msg_types=FRIENDS) 2 def auto_audit_msg(msg): 3 new_friend = bot.accept_friend(msg.card) 4 new_friend.send(‘我是Goodog小助手,如果你也想拥有一个跟我一样功能的机器人请添加公众号【小夭同学】留言获取!‘) 5 new_friend.send_raw_msg( 6 raw_type=42, 7 raw_content=‘<msg username="infopush" nickname="小夭同学"/>‘ 8 ) 9 new_friend.send(allText)
3.4、关键字回复发送加群邀请链接
1 @bot.register(Friend, msg_types=TEXT) 2 def auto_add_msg(msg): 3 if ‘py‘ in msg.text.lower(): 4 rebot[0].add_members(msg.sender, use_invitation=True) 5 msg.sender.send(‘如果加入py群失败,请等待人工邀请加入!!‘)
3.5、邀请用户入群后发送群公告
1 invite_compile = re.compile(r‘邀请"(.*?)"加入了群聊\s*$‘) // 判断是否为新用户入群
3.5.1、新用户入群发送的公告
1 rebot_msg = ‘‘‘@{atname}\u2005\u2005\u2005??????欢迎加入群??????\n 2 ???? 此群禁止发广告,不然踢!!!\n 3 ?????? 无法登录网页微信的问题,无有效解决办法。\n 4 ?????? 怎样提问:\n 5 1. 不要问无意义的问题 ?? 6 2. 问问题前最好贴出截图。?? 7 3. 描述清晰,信息充足。?? 8 4. 如果想要源码请关注?? 【小编】?? 回复【Python】获取‘‘‘
3.5.2、为加入的群进行注册,以用来抓取群消息
1 @bot.register(rebot, NOTE) // NOTE 为系统通知 2 def invite_group(msg): 3 """ 群通知处理 """ 4 text = msg.text # 通知的内容 5 member = msg.member.name # 消息发送者昵称 6 invite_names = invite_compile.findall(text) # 判断是否是加入了新用户 7 if invite_names: # 用于邀请 8 invite_name = invite_names[0] # 加入者的昵称 9 if rebot_msg: 10 note = rebot_msg.format(atname=invite_name) 11 msg.sender.send(note) # 向群里发送欢迎语句 12 return
4、运行机器人
1 while True: 2 schedule.run_pending() 3 time.sleep(1)