如题。只要新浪某个人的微博一更新,立刻实现qq群里也同步更新!
9条回答 默认 最新
- x10n9 2022-04-08 11:58关注
获得1.00元问题酬金 只获取最近一条内容,判断消息ID在不在文件中,不在就写入文件并发送QQ消息
# # -*- coding:utf-8 -*- # ''' # 发送微博消息 # ''' from time import sleep import win32gui import win32con import win32clipboard import requests from urllib.parse import urlencode from os import path class CSendQQMsg(): def __init__(self, friendName, msg): self.friendName = friendName self.msg = msg def setText(self): win32clipboard.OpenClipboard() win32clipboard.EmptyClipboard() win32clipboard.SetClipboardData(win32con.CF_UNICODETEXT, self.msg) win32clipboard.CloseClipboard() def sendmsg(self): self.setText() hwndQQ = win32gui.FindWindow(None, self.friendName) if hwndQQ == 0: print('未找到qq对话框') return win32gui.SendMessage(hwndQQ, win32con.WM_PASTE, 0, 0) win32gui.SendMessage(hwndQQ, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0) class Weibo(): def __init__(self, userid): self.base_url = 'https://m.weibo.cn/api/container/getIndex?' self.headers = { 'Host': 'm.weibo.cn', 'Referer': 'https://m.weibo.cn/u/3549916270', 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36', 'X-Requested-With': 'XMLHttpRequest', } self.userid = userid def get_page(self): params = { 'type': 'uid', 'value': self.userid, 'containerid': '107603' + str(self.userid), 'page': 1 } url = self.base_url + urlencode(params) try: response = requests.get(url, headers=self.headers) if response.status_code == 200: return response.json() except requests.ConnectionError as e: print('Error', e.args) def parse_page(self): if self.get_page(): items = self.get_page().get('data').get('cards') id = items[0].get('mblog').get('id') text = items[0].get('mblog').get('text') return id, text if __name__ == '__main__': friendName = '灰丶' # QQ用户名 weibo = Weibo('3549916270') # 微博用户ID id, text = weibo.parse_page() qq = CSendQQMsg(friendName, text) while True: if not path.exists('output.txt'): with open('output.txt', 'a') as f: f.write(id) qq.sendmsg() # 发送QQ消息 else: with open('output.txt', 'r', encoding='utf-8') as f: data = f.read() if id not in data: with open('output.txt', 'a') as f: f.write(id) qq.sendmsg() else: print("微博内容id已在文件中") sleep(10)
使用示例:
需要打开QQ对话框解决 2无用
悬赏问题
- ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
- ¥20 Python安装cvxpy库出问题
- ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
- ¥15 python天天向上类似问题,但没有清零
- ¥30 3天&7天&&15天&销量如何统计同一行
- ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
- ¥15 C#调用python代码(python带有库)
- ¥15 活动选择题。最多可以参加几个项目?
- ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
- ¥15 vs2019中数据导出问题