• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Python 实现局域网远程屏幕截图案例

    最近各地中小学都在开展线上教学,有些不自觉的小朋友们用电脑在线学习的时候会趁家长不在的时候偷偷玩游戏、看漫画。

    本程序screenshot.py就是用来监控学生机(windows系统)屏幕活动的一个小脚本。

    首先在学生机上安装python3环境。另外需要安装pyautogui:

    pip install pyautogui

    学生机启动后台进程方法:在学生机上建立一个批处理文件,用无窗口python运行命令,以下根据你自己的python安装位置和脚本所在文件夹调整。。

    c:\python37\pythonw.exe d:\py\screenshot.py 1>1.txt 2>2.txt

    from http.server import BaseHTTPRequestHandler, HTTPServer
    import pyautogui, socket
    # for windows, screenshot.py
    # 家长监控地址: http://192.168.1.3:8009/
    PORT = 8008
    # 获取学生机局域网地址
    IP = socket.gethostbyname(socket.gethostname())
    #windows
    class myHandler(BaseHTTPRequestHandler):
     def do_GET(self):
     img = pyautogui.screenshot() #屏幕截图
     if img:
      self.send_response(200) #HTTP 状态码
      self.send_header('Content-Type', 'image/png')
      self.end_headers()
      img.save(self.wfile, 'PNG') # 写入HTTP 响应流文件
    def main():
     try:
     sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
     #判断当前端口是否已经打开
     result = sock.connect_ex((IP, PORT))
     portopen = result == 0
     sock.close()
     if not portopen:
      #启动web服务器,用自定义的响应处理类
      server = HTTPServer((IP, PORT), myHandler)
      server.serve_forever() # 服务器持续监听
     except:
     pass
    if __name__ == '__main__':
     main()
    

    WIFI环境下,在家长机器或手机浏览器中输入下面的网址(假设学生机IP为192.168.1.3):

    http://192.168.1.3:8008/

    就可看到学生当前的屏幕活动。可刷新。

    补充:python代码实现截图识字

    有次网上down了个截图实识的软件,发现一天只能用10次要钱才能解锁免费,很气,作为一个菜鸡怎么能忍受

    于是自己用python写了个简单的小工具,分享给大家

    代码如下: 先安装库

    from PIL import ImageGrab,Image
    import keyboard #监控键盘
    from time import sleep
    import sys
    from aip import AipOcr
    
    class API():
      def picture2Text(filePath):
    
    
        API_ID = '######'
        API_KEY = '#######'
        SECRET_KEY = '######'
    
        aipocr = AipOcr(API_ID, API_KEY, SECRET_KEY)
    
        image = API.getFileContent(filePath)
        texts = aipocr.basicGeneral(image)
        allTexts = ''
        for words in texts['words_result']:
          allTexts = allTexts + ''.join(words.get('words',''))
        return allTexts
       #  print(texts)
    
    
      def getFileContent(a):
        with open(a,'rb') as fp:
          return fp.read()
    
    def seceenShot():
      '''用于获取剪切板图片信息并保存到本地'''
    #ctrl+alt+a 这个看你用什么截图,qq是个
      if keyboard.wait(hotkey='ctrl+alt+a') == None:
        if keyboard.wait(hotkey='enter') == None:
          sleep(0.01)
          im_gray = ImageGrab.grabclipboard()
    #      print(im_gray)
          if isinstance(im_gray,Image.Image):
            im_gray.save("250.jpg")
          else:
            print('请重新截图')
      else:
        print('请使用qq截图,小逗比(记得截图后按enter)')
    if __name__ == '__main__':
      for _ in range(sys.maxsize):
        seceenShot()
        test = API.picture2Text(r'250.jpg')
        print(test)

    上述11,12,13的是百度云的工单账号和密钥,如图下,自己可以注册的免费

    33行和34行是监控键盘的

    33行是开始截图:ctrl+alt+a (这个看自己的截图工具是什么键就换成什么)

    34行是结束:enter (一定要按enter结束截图)

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    您可能感兴趣的文章:
    • 对Python获取屏幕截图的4种方法详解
    • Python实现屏幕截图的两种方式
    • Python实现屏幕截图的代码及函数详解
    • Python编写屏幕截图程序方法
    • Python 实现Mac 屏幕截图详解
    上一篇:Python 启动时选择32位 或64位版的操作
    下一篇:如何用Python中Tushare包轻松完成股票筛选(详细流程操作)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Python 实现局域网远程屏幕截图案例 Python,实现,局域网,远程,