保密观线上培训自动播放脚本
依赖: python3 webbrowser win32api win32con
注意点: (使用之前需要先登陆一下,浏览器session保存用户的登录信息) 1.浏览器路径替换为用户自己浏览器的路径(已修改:改为使用用户系统默认浏览器)
2.鼠标按钮区域可能需要用户自动手动更改自己适合的坐标
获取开始播放按钮方式: Prt Sc截图按钮全屏截图,然后在画图打开,打开之后切换成画笔移动到开始播放按钮 此时画图界面的左下角显示的就是坐标,按照坐标改程序前几行就行
自动可以学习到4学时以上
视频打开后用户可以用电脑干别的事情,等待下一个视频打开后用户最好不要操作,等待视频开始 视频开始播放后就可以切换到其他程序,此时可以正常使用电脑
代码语言:javascript复制import time
import os
import io
import webbrowser
# import ddddocr
# import pyautogui
import win32api
import win32con
import math
import threading
######################
# 新的方法不用输入用户浏览器Path了,可以直接调用系统默认浏览器
# 需要用户设置的唯一参数(鼠标点击位置),即开始播放的按钮在屏幕的坐标位置
# 打开一个视频,然后全屏截图之后在画图打开,切换到画笔
# 然后看左下角显示的数字,分别就是x和y
# 有不看的视频注释即可
######################
x = 465
y = 1005
urlAndTime = {
# [必修]第1课 红色保密 百年征程
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=580&doclibId=3&pubId=&resourceId=56733c5e-9b0a-4e8c-b222-d8a9400e7a72':13.22, # 红色保密 百年征程 0.3
# 第2课 传承红色基因 弘扬保密传统
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=578&doclibId=3&pubId=&resourceId=b2358834-c24c-41db-bdb6-cbc473c75f1b':6.30, # 1.党的保密工作优良传统 0.14
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=576&doclibId=3&pubId=&resourceId=6270c6f3-fae7-4625-9b1b-fc5764bbde01':4.50, # 2.坚定的理想信念 0.1
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=574&doclibId=3&pubId=&resourceId=374a7ddd-49b5-4a70-890f-9f727d789342':3.52, # 3.强烈的忧患意识 0.08
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=572&doclibId=3&pubId=&resourceId=2af1231f-997e-450b-9b1c-6973a7229a2b':4.42, # 4.严格的纪律约束 0.1
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=570&doclibId=3&pubId=&resourceId=91f436db-4fa6-49c2-8347-8d9628c9c9fa':4.38, # 5.紧紧地依靠人民 0.1
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=568&doclibId=3&pubId=&resourceId=97080222-7653-4100-9587-7421556977e5':5.05, # 6.持续的技术对抗 0.1
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=566&doclibId=3&pubId=&resourceId=25d0e1a9-dbbf-44b5-ac19-9c004f9f3407':4.57, # 7.领导的率先垂范 0.1
# 第3课 “党史上的保密印记”系列
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=592&doclibId=3&pubId=&resourceId=1ac1cf02-5182-40b5-bb20-b2e1686cf57b':2.13, # 1.誓与密码共存亡 0.05
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=590&doclibId=3&pubId=&resourceId=70f222a1-5441-497c-8f84-6105dadd3737':3.40, # 2.革命航船破浪启航 0.08
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=588&doclibId=3&pubId=&resourceId=2a065b94-2a7d-4b8f-b581-1504a2451799':3.40, # 3.手摇发电机的长征之路 0.08
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=586&doclibId=3&pubId=&resourceId=4ed78416-c441-4328-8f64-407d5adfec4b':4.25, # 4.西安事变前夕 0.1
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=584&doclibId=3&pubId=&resourceId=22b35616-8830-400b-a74b-89bfd525f828':4.28, # 5.共和国的谍战玫瑰 0.1
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=582&doclibId=3&pubId=&resourceId=8e703fa2-1592-4c78-8670-e346ff8e9ee5':3.51, # 6.一苏大的保密空城计 0.08
# [必修]第1课 红线不能触碰底线不能逾越
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=644&doclibId=3&pubId=&resourceId=a91aafa5-d9b7-422e-aaa9-0e0c3045345c':5.47, # 1.利欲熏心窃秘密 锒铛入狱悔莫及
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=642&doclibId=3&pubId=&resourceId=5a744db1-ebb1-440f-91d4-6c29467008a7':6.29, # 2.出售废品莫大意 认真清点防泄密
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=640&doclibId=3&pubId=&resourceId=a3e4d860-934c-4f65-a799-74df608bd250':7.33, # 3.密件岂能随便邮 快递传密栽跟头
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=638&doclibId=3&pubId=&resourceId=1204e5fb-bdee-4a81-8f78-2354634465a1':5.31, # 4.擅携密件出国境 麻痹侥幸毁前程
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=636&doclibId=3&pubId=&resourceId=5ae3afab-bb82-4e78-bed3-beb2384f0ad5':6.39, # 5.私自留存隐患多 贪图方便酿恶果
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=634&doclibId=3&pubId=&resourceId=75029480-ec24-4439-a293-f9a37bec7d8d':5.37, # 6.私人交往有禁忌 泄露秘密违法纪
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=632&doclibId=3&pubId=&resourceId=ab6473b5-a9a7-4001-a89f-9c78441b410f':5.53, # 7.公共网络很便利 严禁使用传秘密
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=628&doclibId=3&pubId=&resourceId=2491d0da-35c7-44b2-b7f1-673c4f25c010':5.52, # 8.违规联网为红颜 依法判刑悔已晚
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=626&doclibId=3&pubId=&resourceId=ad1820c6-079f-48ae-ade7-1f5b2c034359':7.20, # 9.涉密非密有界限 交叉互联埋隐患
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=624&doclibId=3&pubId=&resourceId=c3ba5041-cee1-45e2-944d-b711775eb6c0':5.47, # 10.非密电脑存秘密 拱手相送犯大忌
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=622&doclibId=3&pubId=&resourceId=f585b736-1515-4f22-af37-4e077b6a4f57':7.03, # 11.安全程序防攻击 擅自卸载违法纪
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=620&doclibId=3&pubId=&resourceId=3594f4df-a8e8-43fe-9f94-af2e898b7fba':7.07, # 12.涉密设备要淘汰 擅自处理不应该
# [必修]第1课 “秒懂保密”系列之涉密人员保密管理
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=514&doclibId=3&pubId=&resourceId=9b84efe2-f8af-47b0-b030-d9d7bbe29a6b':1.58, # 1.涉密人员与涉密岗位
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=516&doclibId=3&pubId=&resourceId=4f19e38c-be2d-4484-8dc5-175abe12038d':2.32, # 2.涉密人员保密审查
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=518&doclibId=3&pubId=&resourceId=9e519ac1-eb92-46ac-b25f-a3d13cf71ce8':2.35, # 3.涉密人员上岗前保密管理
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=520&doclibId=3&pubId=&resourceId=6c52f617-a459-4d7d-b5b9-77995f86872b':2.31, # 4.涉密人员在岗培训、复审与重大事项报告
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=522&doclibId=3&pubId=&resourceId=b381bbf7-1f8e-41e4-9f23-0e9ec53e8908':3.10, # 5.涉密人员出国(境)管理
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=530&doclibId=3&pubId=&resourceId=38d66f3f-e25e-4eb8-a28d-84f1d173767c':2.26, # 6.涉密人员离岗离职保密管理
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=526&doclibId=3&pubId=&resourceId=3bd3300e-8561-4186-ba02-b6323248e9d4':3.10, # 7.涉密人员脱密期管理
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=528&doclibId=3&pubId=&resourceId=1f415688-9796-4495-8910-3c24d05b4540':1.50, # 8.涉密人员义务与权益保障
#[必修]第1课 风险四伏的办公自动化设备
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=3083&doclibId=3&pubId=&resourceId=a347302e-4518-45c3-b565-c638e12dbdfd':31.46, #
# [必修] 第1课“密”案解读——保密警示案例专题片
'http://www.baomi.org.cn/bmVideo?id=fc5489db-34c7-4db1-a856-96d501ea5a78&docId=3144&doclibId=3&pubId=&resourceId=4387e160-ae6c-4f89-8be3-291a3ab1da67':27.34
# 这些就有4.38学时了
}
# MacOS
# chrome_path = 'open -a /Applications/Google Chrome.app %s'
# Windows
# chrome_path = 'E:/Software/Google/Chrome/Application/chrome.exe %s'
# Linux
# chrome_path = '/usr/bin/google-chrome %s'
def image2byte(image):
'''
图片转byte
image: 必须是PIL格式
image_bytes: 二进制
'''
# 创建一个字节流管道
img_bytes = io.BytesIO()
# 将图片数据存入字节流管道, format可以按照具体文件的格式填写
image.save(img_bytes, format="JPEG")
# 从字节流管道中获取二进制
image_bytes = img_bytes.getvalue()
return image_bytes
#模拟鼠标点击
def mouse_click(x, y):
win32api.SetCursorPos([x, y])
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
# 主线程
class mainThread (threading.Thread): #继承父类threading.Thread
def __init__(self, url):
threading.Thread.__init__(self)
self.url = url
def run(self):
# 先确保chrome被关闭了
os.system("taskkill /im chrome.exe /f")
time.sleep(2)
# 创建子线程
thread1 = childThread(1, "chrome", self.url)
thread2 = childThread(2, "play", self.url)
# 开启线程
thread1.start()
thread2.start()
# 子线程
class childThread (threading.Thread): #继承父类threading.Thread
def __init__(self, threadID, name, url):
threading.Thread.__init__(self)
self.threadID = threadID
self.name = name
self.url = url
def run(self): #把要执行的代码写到run函数里面 线程在创建后会直接运行run函数
if(self.name == "chrome"):
time.sleep(0.1)
url = self.url
# 老方法需要填写用户本地浏览器地址,新方法直接调用用户默认浏览器
# chrome_path = 'C://Users//CZY//AppData//Local//Google//Chrome//Application//chrome.exe %s'
# webbrowser.get(chrome_path).open(url)
# 新方法,用户默认打开网页就行了
webbrowser.open(url)
print("chrome threading over")
elif(self.name == "play"):
# # 先给线程加一个锁
# threading.Lock().acquire()
# 休眠一段时间,确保chrome完全加载完成
time.sleep(8)
# 模拟鼠标点击
mouse_click(x, y) # 点击开始播放图标 不同的人可能不太一样,我是根据我的屏幕浏览器全屏
# 获取sleep时间
video_time = urlAndTime[self.url]
sleep_time = int(video_time)*60 int(math.modf(video_time)[0]*100)
print("sleep time = %f"%sleep_time)
time.sleep(sleep_time 8) # 多看5秒钟,确保容错
###
# OCR准确率不够,手写吧
###
# win32api.keybd_event(17,0,0,0) #ctrl键位码是17
# win32api.keybd_event(65,0,0,0) #A键位码是65
# time.sleep(0.1)
# win32api.keybd_event(65,0,win32con.KEYEVENTF_KEYUP,0) #释放按键
# win32api.keybd_event(17,0,win32con.KEYEVENTF_KEYUP,0)
# img = pyautogui.screenshot(region=(450,990, 110, 34)) # 得到截图区域
# img.save("./1.jpg")
# ocr = ddddocr.DdddOcr()
# video_time = ocr.classification(image2byte(img)) # 得到截图区域文本
# print("get video time%s"%video_time)
# 关闭chrome
os.system("taskkill /im chrome.exe /f")
# # 释放锁,开启下一个线程
# threading.Lock().release()
for url in urlAndTime:
# main_thread = childThread(2, "play", url)
# main_thread.start()
# main_thread.join()
# 先确保chrome被关闭了
os.system("taskkill /im chrome.exe /f")
time.sleep(2.5)
# 创建子线程
thread1 = childThread(1, "chrome", url)
thread2 = childThread(2, "play", url)
# 开启线程
thread1.start()
thread2.start()
thread1.join()
thread2.join()
print("Exiting Main Thread")