日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

如何將服務器上的python代碼通過QQ發送回傳信息(附實現方法)

瀏覽:117日期:2022-07-25 18:02:34

本文介紹我使用QQ得到服務器上回傳的python代碼的探索歷程,面向的對象是對計算機網絡有一定了解的讀者。期待有興趣的人和我一起探討!

需求來源

最近,我在跑一些數據量巨大的代碼。代碼在本地一運行,CPU就占滿了,代碼運行時間又久,因此這段時間根本用不了電腦,這對疫情在家的大學生很難受。把代碼放服務器吧,又不知道什么時候能跑完,這讓我很不爽。于是,我希望服務器端的代碼能給我一個不錯的反饋,由此我選擇了QQ交互方法。

硬件工具

本地電腦一臺,服務器一臺(如果你只是想嘗試一下,而沒有服務器,可以使用 VMware 虛擬機)

探索歷程

首先,我使用的無界面CentOS服務器上是沒有辦法運行QQ的,因此想要實現交互,應該先把服務器上的信息傳送到本地電腦,再由本地電腦發送給QQ,這樣我就可以收到消息了。

那么就將目標分割為兩個任務了,分別為:

本地電腦給QQ發信息 服務器與本地電腦信息交互

接下來就給大家說明我是怎么實現這兩步的:

本地電腦給QQ發信息

主要原理:通過 win32 API, 將python信息賦給剪切板,粘貼到QQ聊天框中,最后模擬按 “Enter” 鍵,發送消息1。代碼如下:

import win32guiimport win32conimport win32clipboard as wclass SendMsg: ''' 這是一個用于將信息發送到QQ的類, 使用方法為 : SendMsg('收信人QQ昵稱', '信息').sendmsg() 注意一點,收信人的QQ聊天窗口要在屏幕上,不能最小化或被掩蓋。 ''' def __init__(self, receiver, msg): self.receiver = receiver self.msg = msg self.set_text() # 設置剪貼版內容 def set_text(self): w.OpenClipboard() w.EmptyClipboard() w.SetClipboardData(win32con.CF_UNICODETEXT, self.msg) w.CloseClipboard() # 發送消息 def sendmsg(self): qq = win32gui.FindWindow(None, self.receiver) win32gui.SendMessage(qq, win32con.WM_PASTE, 0, 0) win32gui.SendMessage(qq, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)if __name__ == ’__main__’: SendMsg('一花一世界', 'Hello, world').sendmsg()

效果如圖所示:

如何將服務器上的python代碼通過QQ發送回傳信息(附實現方法)

注意:

1、python 關于 win32 的包,下載方式為:

pip install pypiwin32

2、QQ有兩種發送消息的模式,一種是'Enter',一種是'Ctrl+Enter'。這里要選擇'Enter'模式。

服務器與本地電腦信息交互

我們已經完成了本地電腦給QQ發信息的操作,現在只需要完成服務器與本地電腦信息的交互,就可以讓本地電腦根據服務器的指令發送QQ信息了。如何讓服務器和本地電腦通信呢?經過一些思考,我選擇用Socket2。使用Socket的話,就要解決IP問題,因為本地電腦的IP不是公網IP,我們需要解決端口映射問題,將本地電腦的IP映射到公網!考慮到不一定有路由器,我使用了一款軟件路由俠,該軟件在免費的狀態下,一個月可以有一個G的流量進行端口映射,因為我們主要用于小段文字傳輸,這點流量已經足夠。該軟件也操作簡單,我不過多介紹。本地電腦開放的端口為8080端口,經過路由俠的端口映射后,端口變為yihuahuahua.e2.luyouxia.net:30985因為我們只用做單向通信,所以服務器的IP不重要。我們首先測試一下Socket功能,讓服務器給本地電腦發一個'Hello world'代碼如下:

本地電腦端代碼

from socket import *HOST = ’’PORT = 8080BUFSIZ = 1024ADDR = (HOST, PORT)tcpSerSock = socket(AF_INET, SOCK_STREAM)tcpSerSock.bind(ADDR)tcpSerSock.listen(5)while True: print(’waiting for connection...’) tcpCliSock, addr = tcpSerSock.accept() print(’...connnecting from:’, addr) while True: data = tcpCliSock.recv(BUFSIZ) if not data: break print(data.decode(’utf-8’)) tcpCliSock.close()tcpSerSock.close()

服務器端代碼

from socket import *HOST = ’yihuahuahua.e2.luyouxia.net’PORT = 30985BUFSIZ = 1024ADDR = (HOST, PORT)tcpCliSock = socket(AF_INET, SOCK_STREAM)tcpCliSock.connect(ADDR)output_str = 'Hello world!'tcpCliSock.send(output_str.encode())tcpCliSock.close()

注意:在進行Socket通信時,要注意開放端口?。?!

將功能綜合

這里規定一個任務:計算1加1的值,并返回計算時間,將上述功能綜合后,代碼如下:本地電腦端代碼

from socket import *import win32guiimport win32conimport win32clipboard as wclass SendMsg: ''' 這是一個用于將信息發送到QQ的類, 使用方法為 : SendMsg('收信人QQ昵稱', '信息').sendmsg() 注意一點,收信人的QQ聊天窗口要在屏幕上,不能最小化或被掩蓋。 ''' def __init__(self, receiver, msg): self.receiver = receiver self.msg = msg self.set_text() # 設置剪貼版內容 def set_text(self): w.OpenClipboard() w.EmptyClipboard() w.SetClipboardData(win32con.CF_UNICODETEXT, self.msg) w.CloseClipboard() # 發送消息 def sendmsg(self): qq = win32gui.FindWindow(None, self.receiver) win32gui.SendMessage(qq, win32con.WM_PASTE, 0, 0) win32gui.SendMessage(qq, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)if __name__ == ’__main__’: HOST = ’’ PORT = 8080 BUFSIZ = 1024 ADDR = (HOST, PORT) tcpSerSock = socket(AF_INET, SOCK_STREAM) tcpSerSock.bind(ADDR) tcpSerSock.listen(5) while True: tcpCliSock, addr = tcpSerSock.accept() while True: data = tcpCliSock.recv(BUFSIZ) if not data: break output_str = data.decode(’utf-8’) SendMsg('一花一世界', output_str).sendmsg() tcpCliSock.close() tcpSerSock.close()

服務器端代碼

from socket import *import timeHOST = ’yihuahuahua.e2.luyouxia.net’PORT = 30985BUFSIZ =1024ADDR = (HOST,PORT)tcpCliSock = socket(AF_INET,SOCK_STREAM)tcpCliSock.connect(ADDR)start = time.time()count = 1 + 1end = time.time()output_str = '結果為' + str(count) + ' 消耗時間' + str(int(end - start)) + '秒'tcpCliSock.send(output_str.encode())tcpCliSock.close()

運行結果:

如何將服務器上的python代碼通過QQ發送回傳信息(附實現方法)

美滋滋。

改進方向與探索

目前已知的缺陷有:Socket第一次通信有概率收不到消息,第二次就好了…希望有大佬在評論區指出我的不足。

這個版本只能實現單方面信息傳送,如果想實現雙向的,我思考的一個思路是通過 酷QAir的QQ機器人 加上 CQHTTP3 插件配合nonebot庫4來實現。不過我的需求已經實現了,暫時懶得動手了,有緣再探索吧。

https://www.cnblogs.com/hwj2019/p/11552055.html ↩︎

https://blog.csdn.net/su_bao/article/details/80380465 ↩︎

https://github.com/richardchien/coolq-http-api ↩︎

https://nonebot.cqp.moe/guide/getting-started.html ↩︎

總結

到此這篇關于我將服務器上的python代碼通過QQ發送回傳信息(附實現方法)的文章就介紹到這了,更多相關python qq發送回傳信息內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: qq Python
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久在线免费| 视频精品一区二区| 四虎精品一区二区免费| 亚洲少妇在线| av亚洲免费| 久久亚洲在线| 久久在线视频免费观看| 日韩在线欧美| 欧美成人基地| 欧美中文字幕一区二区| 亚洲精品国产嫩草在线观看 | 日韩av在线播放中文字幕| 蜜臀久久99精品久久久久宅男| 伊人久久成人| 欧美1区免费| 久久av一区二区三区| 国产模特精品视频久久久久| 亚洲一区二区免费看| 丝袜美腿亚洲一区| 日韩一区二区三区免费视频| 天海翼精品一区二区三区| 综合欧美亚洲| 国产日韩在线观看视频| 国产精品www.| 成人亚洲一区| 136国产福利精品导航网址| 不卡中文字幕| 亚洲精品免费观看| 欧美视频精品全部免费观看| 日韩不卡一区二区三区| 国产精品综合| xxxxx性欧美特大| 婷婷成人基地| 亚洲18在线| 国产精品qvod| 美女免费视频一区| 不卡福利视频| 夜夜嗨av一区二区三区网站四季av| 首页国产欧美日韩丝袜| 日本欧美韩国一区三区| 午夜精品久久久久久久久久蜜桃| 欧美1区2区3区| 视频一区中文字幕精品| 欧美精品中文字幕亚洲专区| 国产剧情一区| 少妇精品导航| 亚洲精品少妇| 黄色网一区二区| 香蕉精品久久| 日本中文字幕不卡| 蜜桃久久久久| 欧美性感美女一区二区| 亚洲激情欧美| 欧美激情综合| 亚洲高清毛片| 欧美日韩在线精品一区二区三区激情综合| 精品国产麻豆| 国产精品美女久久久| 国产日韩精品视频一区二区三区| 国产高清日韩| 欧美va天堂在线| 欧美日韩国产一区二区在线观看| 欧洲亚洲一区二区三区| 欧美一区网站| 亚洲婷婷免费| 国产亚洲久久| 欧美午夜精品一区二区三区电影| 欧美一级久久| 久久国产直播| 午夜精品福利影院| 秋霞影院一区二区三区| 亚洲毛片在线免费| 欧美成人a交片免费看| 婷婷亚洲成人| 国产 日韩 欧美 综合 一区| 欧美综合二区| 正在播放日韩精品| 日韩avvvv在线播放| 99久久99久久精品国产片果冰| 日韩国产91| 国产综合激情| 国产专区精品| 午夜天堂精品久久久久| 激情欧美一区| 国产伊人久久| 91免费精品国偷自产在线在线| 偷拍欧美精品| 久久久久久色| 视频一区二区三区中文字幕| 国产美女久久| 在线精品视频一区| 国产综合亚洲精品一区二| 国产一区二区三区四区| 亚洲精品乱码久久久久久蜜桃麻豆| 99久久99视频只有精品| 老司机免费视频一区二区三区| 视频一区二区国产| 99久久婷婷这里只有精品| 久久av日韩| 日本一不卡视频| 国产亚洲精品v| 久久美女精品| 久久久久久一区二区| 国产精品玖玖玖在线资源| 亚洲欧美久久久| 99精品电影| 国产粉嫩在线观看| 美女久久久久久| 91精品国产自产在线丝袜啪| 性一交一乱一区二区洋洋av| 99久久夜色精品国产亚洲1000部| 麻豆极品一区二区三区| 日本不卡一区二区三区| 人人爽香蕉精品| 欧美午夜不卡| 久久久精品午夜少妇| jizzjizz中国精品麻豆| 美女国产精品久久久| 国产欧美一级| 日本一区福利在线| 综合国产视频| 中文字幕亚洲影视| 国产亚洲在线| 亚洲精品网址| 欧美不卡高清| 不卡中文字幕| 欧美精品自拍| 亚洲一区网站| 日韩精品一区第一页| 蜜桃久久av一区| 亚洲乱码视频| 日本欧美在线| 欧美三级第一页| 欧美1区二区| 欧美极品中文字幕| 精品国产精品国产偷麻豆| 风间由美中文字幕在线看视频国产欧美| 久久av日韩| 丁香婷婷久久| 都市激情国产精品| 福利一区二区| 综合日韩av| 欧美精品资源| 欧美不卡在线| 人人精品人人爱| 91九色综合| 精品国产亚洲一区二区三区大结局| 久久精品资源| 激情黄产视频在线免费观看| 国产资源在线观看入口av| 成人福利av| 激情久久五月| 亚洲欧美日韩国产| 午夜久久av| 美女视频黄免费的久久| 综合日韩av| 99热免费精品| 免费精品视频| 久久激情综合网| 国产成人精品999在线观看| 日韩高清成人在线| 国产66精品| 蘑菇福利视频一区播放| 国产精品对白| 亚洲精品福利电影| 国产视频一区免费看| 欧美日韩va| 日本国产精品| 日韩av电影一区| 日韩电影免费网址| 亚洲永久精品唐人导航网址| 精品久久久中文字幕| 五月天综合网站| 国产欧美啪啪| 久久在线电影| 国产毛片久久久| 久久精品国产www456c0m| 久久成人一区| 老司机精品视频在线播放| 欧美国产小视频| 激情欧美国产欧美| 精品一区三区| 久久影院一区二区三区| 狠狠爱www人成狠狠爱综合网| 欧美一区二区三区高清视频| 首页欧美精品中文字幕| 亚洲午夜久久| 亚洲香蕉久久| 久久精品99国产精品| 一区二区国产精品| 国产精品夜夜夜| 福利精品一区| 婷婷综合五月| 亚洲精品四区| 国产美女视频一区二区| 三级在线看中文字幕完整版| 国产一区导航| 国产精品a久久久久| 国产一区福利| 午夜电影一区|