利用wxpy进行微信信息发送详解(一)
利用wxpy进行微信信息自动发送,简直是骚扰神器,除非拉黑你。
那我们就来设置一个场景吧,五秒发送一次,一次发送10条
首先我们来整理一下思路:
♦1.首先我们要从网上爬去我们想要发送的内容
♦2.登录微信找到想要发送的微信好友
♦3.讲爬取的信息发送给好友
首先我们需要的模块:
♦import requests
♦import wxpy,threading,time
♦from bs4 import BeautifulSoup
代码草稿及调试如下:
import wxpy,threading,requests,time#如果报错:AttributeError: module 'wxpy' has no attribute 'Bot' # 一定要检查是不是文件夹名字或者文件名字和你要用模块是不是一致了不能一样 from bs4 import BeautifulSoup def get_next(nub): '''获取要发送的内容''' url = 'http://www.59xihuan.cn/index_'#我们观察到每一页只是和上一页的url中一个数据不一样而且是有规律性的递增 response = requests.get(url= url + str(nub) + '.html') a = BeautifulSoup(response.text,'html.parser')#进行解析 txte1 = a.find_all('div',class_='pic_text1')#找到需要的内容的那个标签所在的行 #print(txte1) new_txte = [] for temp in txte1: new_txtes = temp.text#从经验上讲从一般的经验上讲: :string 被用于短文本输入(用户名,电子邮件,密码,标题等)。 #:text 被用于预计文本长度较长的文本输入(描述,评论内容等)。 news_text = new_txtes.replace('\r\n \r\n ', '') news_text = news_text.replace('\r\n \n', '')#去掉前后空格 new_txte.append(news_text)#从经验上讲从一般的经验上讲: :string 被用于短文本输入(用户名,电子邮件,密码,标题等)。 #:text 被用于预计文本长度较长的文本输入(描述,评论内容等)。 # print(new_txte) return new_txte def Dingshi(num): '''找到好友并发送信息''' num =num try: bot = wxpy.Bot(cache_path=True)#打开微信,读取cooker信息cache_path=True。 my_friend = bot.friends().search(u'xxxxx')[0]#从好友中找到要发送的具体的那个人 a = get_next(num)#在登录后调用获取获取发送信息函数 for c in range(len(a)):#把列表里面的额内容依次发送出去 my_friend.send(a[c])#发送信息 except:pass # timer1=threading.Timer(1,Dingshi,(text))#可以使用定时器进行无线发送 # timer1.start() if __name__ == '__main__': for i in range(10): time.sleep(10) Dingshi(i)#传这个参主要是给他里面调用get_next函数传值
整理代码:
import wxpy,threading,requests,time from bs4 import BeautifulSoup def get_next(nub): '''获取要发送的内容''' url = 'http://www.59xihuan.cn/index_' response = requests.get(url= url + str(nub) + '.html') a = BeautifulSoup(response.text,'html.parser') txte1 = a.find_all('div',class_='pic_text1') new_txte = [] for temp in txte1: new_txtes = temp.text news_text = new_txtes.replace('\r\n \r\n ', '') news_text = news_text.replace('\r\n \n', '')#去掉前后空格 new_txte.append(news_text)#获取文本内容,注意几个获取文本的区别 return new_txte def Dingshi(num): '''找到好友并发送信息''' num =num try: bot = wxpy.Bot(cache_path=True)#打开微信,读取cooker信息cache_path=True。 my_friend = bot.friends().search(u'xxxx')[0]#从好友中找到要发送的具体的那个人 a = get_next(num)#在登录后调用获取获取发送信息函数 for c in range(len(a)):#把列表里面的额内容依次发送出去 my_friend.send(a[c])#发送信息 except:pass if __name__ == '__main__': for i in range(10): time.sleep(10) Dingshi(i)
♦十秒发一次一次依次发十条,你可以随便sing一发送次数只要for i in range(10):把这个10改一下就行了,至于一次发十条是因为一页就有十条,如果像一次发更多的话的可以让一次多读取几页存起来,但是如果一次发太多,会被微信监听,然后拒接,
♦文章的读取可在python爬取小说详解(一)中有详讲,wxpy会在随后进行详解一下。
每天一点点,感受自己存在的意义。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通