draft

draft,第1张

import wx
import math
import time
import pyaudio
import wave
import wx.lib.filebrowsebutton
from multiprocessing import Process
import pyperclip
import pyautogui
import win32gui
import re
import win32con
import time
import webbrowser as web
from selenium import webdriver

class MyCalculator(wx.Frame):
def init(self):
super().init(parent=None, title=“”, size=(835, 1020),
style=wx.DEFAULT_FRAME_STYLE^(wx.MAXIMIZE_BOX))
self.Center()
panel = wx.Panel(parent=self)
panel.SetBackgroundColour(‘grey’)
panel.Center()
font = wx.Font(16, wx.ROMAN, wx.NORMAL, wx.BOLD, underline=False)

    self.boxsize = wx.GridBagSizer(5,5)
    self.equation = ""
    self.result = 0
    self.ResultFlag = 0

    line = wx.StaticLine(panel)
    self.boxsize.Add(line, pos=(0, 0), span=(1, 15), flag=wx.EXPAND | wx.BOTTOM | wx.TOP)

    text = wx.StaticText(panel, -1, label="发帖定时控制", style=wx.ALIGN_LEFT)
    font1 = wx.Font(12, wx.ROMAN, wx.ITALIC, wx.NORMAL)

    text.SetForegroundColour("white")
    text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    self.boxsize.Add(text, pos=(1, 0), span=(1, 15))

    line = wx.StaticLine(panel)
    self.boxsize.Add(line, pos=(2, 0), span=(1, 15), flag=wx.EXPAND | wx.BOTTOM | wx.TOP)


    t = time.strftime("%H:%M:%S", time.localtime())  # 设置初始值
    t = "当前时间:" + t
    self.text1 = wx.StaticText(panel, -1, t)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    self.text1.SetFont(font)
    self.text1.SetForegroundColour("white")

    self.timer = wx.Timer(self)  # 创建一个计时器对象
    self.Bind(wx.EVT_TIMER, self.Time, self.timer)  # 绑定计时器事件
    self.timer.Start(1000)  # 计时器计时1秒

    self.boxsize.Add(self.text1, pos=(3, 0), span=(1, 2))

    textclk = wx.StaticText(panel, -1,label = "发帖时间1:", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    self.boxsize.Add(textclk, pos=(4, 0),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))

    self.text_alarm_p1 = wx.TextCtrl(panel)
    # self.text_alarm_p = wx.TextCtrl(panel, pos=(0, 0), style=wx.TE_READONLY)
    self.text_alarm_p1.SetFont(font)  # 文本框里面格式
    self.text_alarm_p1.BackgroundColour = 'white'
    self.boxsize.Add(self.text_alarm_p1, pos=(4,1),span=(1,3),flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    textclk = wx.StaticText(panel, -1,label = "(模块1)", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    self.boxsize.Add(textclk, pos=(4, 4),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))

    self.time_button = wx.Button(panel, wx.ID_ANY, "RUN")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    self.time_button.SetFont(font2)
    self.boxsize.Add(self.time_button,pos=(4, 5) , span=(3,3), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)



    self.time_button.Bind(wx.EVT_BUTTON, self.run)


    textclk = wx.StaticText(panel, -1,label = "发帖时间2:", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    self.boxsize.Add(textclk, pos=(5, 0),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))

    self.text_alarm_p = wx.TextCtrl(panel, pos=(0, 0))
    self.text_alarm_p.SetFont(font)  # 文本框里面格式
    self.text_alarm_p.BackgroundColour = 'white'
    self.boxsize.Add(self.text_alarm_p, pos=(5,1),span=(1,3),flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    textclk = wx.StaticText(panel, -1,label = "(模块2)", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    self.boxsize.Add(textclk, pos=(5, 4),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))



    textclk = wx.StaticText(panel, -1,label = "发帖时间3:", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    self.boxsize.Add(textclk, pos=(6, 0),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))

    self.text_alarm_p = wx.TextCtrl(panel, pos=(0, 0))
    self.text_alarm_p.SetFont(font)  # 文本框里面格式
    self.text_alarm_p.BackgroundColour = 'white'
    self.boxsize.Add(self.text_alarm_p, pos=(6,1),span=(1,3),flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    textclk = wx.StaticText(panel, -1,label = "(模块3)", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    self.boxsize.Add(textclk, pos=(6, 4),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))


    line = wx.StaticLine(panel)
    self.boxsize.Add(line, pos=(7, 0), span=(1, 15), flag=wx.EXPAND | wx.BOTTOM | wx.TOP)

    text = wx.StaticText(panel, -1,label = "发帖信息输入", style=wx.ALIGN_LEFT)
    font1 = wx.Font(12, wx.ROMAN, wx.ITALIC, wx.NORMAL)

    text.SetForegroundColour("white")
    text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    self.boxsize.Add(text, pos=(8, 0), span=(1, 15))

    line = wx.StaticLine(panel)
    self.boxsize.Add(line, pos=(9, 0), span=(1, 15), flag=wx.EXPAND | wx.BOTTOM | wx.TOP)



    textclk = wx.StaticText(panel, -1,label = "发帖标题:", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    self.boxsize.Add(textclk, pos=(10, 0),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))


    tc4 = wx.TextCtrl(panel, style=wx.TE_MULTILINE)
    self.boxsize.Add(tc4, pos=(11, 0), span=(4, 14), flag=wx.EXPAND, border=5)


    textclk = wx.StaticText(panel, -1,label = "发帖正文:", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    self.boxsize.Add(textclk, pos=(15, 0),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))


    self.tc4 = wx.TextCtrl(panel, style=wx.TE_MULTILINE)
    self.boxsize.Add(self.tc4, pos=(16, 0), span=(18, 14), flag=wx.EXPAND | wx.ALL, border=5)






    # self.fbb = wx.lib.filebrowsebutton.FileBrowseButton(panel,fileMode = wx.FD_OPEN,labelText="音乐:",size = (280,-1), buttonText= "Browse2",initialValue = r"E:\Doctor_Chen\wav1.wav", fileMask="*.wav",labelWidth = 10)
    # self.fbb.SetBackgroundColour("white")
    #
    #
    # self.play_button = wx.Button(panel, wx.ID_ANY, "播放")
    #
    # self.boxsize.Add(self.fbb, pos=(16, 0), span=(1, 3), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)
    # self.boxsize.Add(self.play_button,pos=(16, 3) , flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)
    #
    # self.play_button.Bind(wx.EVT_BUTTON, self.onPlay)
    #
    #
    # self.play_button = wx.Button(panel, wx.ID_ANY, "暂停")
    # self.boxsize.Add(self.play_button,pos=(16, 4) , flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)
    #
    # self.type = ["单曲循环", "随机播放","循环播放"]
    # xxx = wx.ComboBox(panel, -1, "单曲循环", choices=self.type)
    # self.boxsize.Add(xxx, pos=(16, 5), span=(1, 1), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)
    #
    # self.fbb = wx.lib.filebrowsebutton.FileBrowseButton(panel,fileMode = wx.FD_OPEN,labelText="保存:",size = (280,-1), buttonText= "Browse2",initialValue = r"E:\Doctor_Chen\wav1.wav", fileMask="*.wav",labelWidth = 10)
    # self.fbb.SetBackgroundColour("white")
    # self.boxsize.Add(self.fbb, pos=(17, 0), span=(1, 3), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)
    #
    # self.play_button = wx.Button(panel, wx.ID_ANY, "录音")
    # self.boxsize.Add(self.play_button,pos=(17, 3) , flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)
    #
    #
    # self.play_button = wx.Button(panel, wx.ID_ANY, "暂停")
    # self.boxsize.Add(self.play_button,pos=(17, 4) , flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)
    #
    #
    # line = wx.StaticLine(panel)
    # self.boxsize.Add(line, pos=(18, 0), span=(1, 15), flag=wx.EXPAND | wx.BOTTOM | wx.TOP)


    panel.SetSizerAndFit(self.boxsize)

# def time_lock(self,event):
#     filename = self.text_alarm_p1.GetValue()
#     self.text_alarm_p1.SetLabel("111")
#     self.text_alarm_p1.SetBackgroundStyle(style=wx.TE_READONLY)

def Time(self, event):
    t1 = "当前时间: " + time.strftime("%H:%M:%S", time.localtime())
    self.text1.SetLabel(t1)
    for i in range(0, 24):
        temp = "{:0>2d}:00:00".format(i)
        # if t == temp:  # 判断是否为整点
        if t1 == "当前时间: " + self.text_alarm_p.GetValue():
            # filename = "E:\Doctor_Chen\00. YT\\" + "{:0>2d}.wav".format(i)  # 找到对应的wav文件路径
            filename = self.fbb.GetValue()
            self.Sound(filename)  # 播放声音
            break

def run(self, event):
    t1 = time.strftime("%H:%M:%S", time.localtime())
    self.text1.SetLabel(t1)
    # for i in range(0, 24):
    #     temp = "{:0>2d}:00:00".format(i)
        # if t == temp:  # 判断是否为整点
    # if t1 == self.text_alarm_p1.GetValue():
    content = self.tc4.GetValue()
    list = ["https://www.baidu.com/", "https://www.taobao.com/"]
    web.open(list[0])

    # driver = webdriver.Chrome(executable_path=r"D:\tools\python38\Scripts\chromedriver.exe")
    # driver.maximize_window()
    # driver.get(list[1])
    time.sleep(1)
    # driver.manage().window().maximize()

    # driver.execute_script("document.body.style.zoom='80%'")

    # time.sleep(2)
    # driver.close()

    # Window = windows_api()
    # Window.find_window_wildcard(".*淘宝.*")
    # Window.set_foreground()
    time.sleep(0.5)
    print(pyautogui.position())

    # driver.execute_script("document.body.style.zoom='100%'")
    #
    pyautogui.click(679, 348)
    pyperclip.copy(content)
    pyautogui.click(679, 348)
    pyautogui.hotkey("ctrl", "V")
    time.sleep(1)
    pyautogui.hotkey("enter")


def Sound(self, filename):
    f = wave.open(filename, 'rb')  # 加载音频文件(wav)
    pms = f.getparams()  # 获取音频的属性参数
    nchannels, sampwidth, framerate, nframes = pms[:4]  # 单独提取出各参数的值,并加以定义
    p = pyaudio.PyAudio()  # 创建一个播放器
    s = p.open(format=p.get_format_from_width(sampwidth), channels=nchannels, rate=framerate,
               output=True)  # 将音频转换为音频流
    while True:
        data = f.readframes(1024)  # 按照1024大小的块,读取音频数据,得到一系列二进制编码
        if data == b'':
            break
        s.write(data)  # 开始按照音频的参数,播放音频
    s.close()
    p.terminate()

# def alear_time(self):
#     for i in range(0, 24):
#         temp = "{:0>2d}:00:00".format(i)
#         # if t == temp:  # 判断是否为整点
#         if self.t == "当前时间: " + str(self.text_alarm_p.GetValue()):
#             # filename = "E:\Doctor_Chen\00. YT\\" + "{:0>2d}.wav".format(i)  # 找到对应的wav文件路径
#             filename = self.fbb.GetValue()
#             self.Sound(filename)  # 播放声音
#             break

def onPlay(self,event):
    self.text_alarm_p = wx.TextCtrl(self.panel, pos=(0, 0), style=wx.TE_READONLY)

class App(wx.App):

def OnInit(self):
    self.frame = MyCalculator()
    self.frame.Bind(wx.EVT_CLOSE, self.OnClose, self.frame)
    self.frame.Show()
    return True

# def OnOtherColor(self, event):
#     '''
#     使用颜色对话框
#     '''
#     dlg = wx.ColourDialog(self)
#     dlg.GetColourData().SetChooseFull(True)  # 创建颜色对象数据
#     if dlg.ShowModal() == wx.ID_OK:
#         self.paint.SetColor(dlg.GetColourData().GetColour())  # 根据选择设置画笔颜色
#     dlg.Destroy()

def OnClose(self, event):
    dlg = wx.MessageDialog(None, "是否要关闭窗口?", "请确认", wx.YES_NO | wx.ICON_QUESTION)
    retCode = dlg.ShowModal()
    if (retCode == wx.ID_YES):
        self.frame.Destroy()
    else:
        pass

if name == ‘main’:
app = App()
# job = Job(app)
# job.start()

app.MainLoop()

import wx
import math
import time
import pyaudio
import wave
import wx.lib.filebrowsebutton
from multiprocessing import Process
import threading

class Job(threading.Thread):

def __init__(self, *args, **kwargs):
    super(Job, self).__init__(*args, **kwargs)
    self.__flag = threading.Event()  # 用于暂停线程的标识
    self.__flag.set()  # 设置为True
    self.__running = threading.Event()  # 用于停止线程的标识
    self.__running.set()  # 将running设置为True

def run(self):
    while self.__running.isSet():
        self.__flag.wait()  # 为True时立即返回, 为False时阻塞直到内部的标识位为True后返回
        print(time.time())
        time.sleep(1)
        # print("sleep 1s")
def pause(self):
    self.__flag.clear()  # 设置为False, 让线程阻塞
    print("pause")
def resume(self):
    self.__flag.set()  # 设置为True, 让线程停止阻塞
    print("resume")
def stop(self):
    # self.__flag.set()  # 将线程从暂停状态恢复, 如果已经暂停的话(要是停止的话我就直接让他停止了,干嘛还要执行这一句语句啊,把这句注释了之后就没有滞后现象了。)
    self.__running.clear()  # 设置为False
    print("停止!")

class MyCalculator(wx.Frame):
def init(self):
super().init(parent=None, title=“多功能计算器”, size=(835, 1020),
style=wx.DEFAULT_FRAME_STYLE)
self.Center()
panel = wx.Panel(parent=self)
panel.SetBackgroundColour(‘grey’)
panel.Center()
font = wx.Font(16, wx.ROMAN, wx.NORMAL, wx.BOLD, underline=False)

    boxsize = wx.GridBagSizer(5,5)
    self.equation = ""
    self.result = 0
    self.ResultFlag = 0

    text = wx.StaticText(panel, -1,label = "常规计算", style=wx.ALIGN_LEFT)
    font1 = wx.Font(12, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    txt = "常规计算"
    text.SetForegroundColour("white")
    text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    text.SetLabel(txt)
    boxsize.Add(text,pos=(0,0),span=(1,15))

    self.textprint = wx.TextCtrl(panel, pos=(0, 0))
    self.textprint.SetFont(font)  # 文本框里面格式
    self.textprint.BackgroundColour = 'red'
    boxsize.Add(self.textprint, pos=(1,0),span=(1,15),flag=wx.LEFT | wx.EXPAND)



    gridsizer = wx.GridSizer(cols=5, rows=6, vgap=1, hgap=1)
    for x in range(10):
        exec("self.btn%s = wx.Button(panel,label = '%s')" % (x, x))

    list = ['^', '.', '=', '÷', '×', '-', '+', 'Ans', 'AC', 'DEL', 'sin', 'cos', 'tan', '(', ')', 'π', 'log', 'ln',
            'sqrt', 'mod']
    for x in range(10, 30):
        exec("self.btn%s = wx.Button(panel,label = '%s')" % (x, list[x - 10]))

    for x in range(30):
        exec("self.btn%s.SetFont(font)" % (x))

    for i in range(0, 30):
        exec("self.btn%s.BackgroundColour = 'pale green'" % i)

    self.btn18.BackgroundColour = "red"

    list = []
    for i in range(0,30):
        exec("list.append((self.btn%s, 0, wx.EXPAND))"%i)
    print(list)
    gridsizer.AddMany(list)

    boxsize.Add(gridsizer,pos=(2, 0), span=(1, 15), flag=wx.EXPAND|wx.TOP|wx.LEFT|wx.RIGHT, border=1)

    line = wx.StaticLine(panel)
    boxsize.Add(line,pos=(3,0),span=(1,15),flag=wx.EXPAND|wx.BOTTOM|wx.TOP)

    text = wx.StaticText(panel, -1,label = "常规计算", style=wx.ALIGN_LEFT)
    font1 = wx.Font(12, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    txt = "程序员计算"
    text.SetForegroundColour("white")
    text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    text.SetLabel(txt)
    boxsize.Add(text,pos=(4,0),span=(1,15))


    #
    # text2 = wx.StaticText(panel, label="程序员计算",style = 5, name = "1")
    # boxsize.Add(text2, pos=(3, 0), flag=wx.LEFT, border=10)

    line = wx.StaticLine(panel)
    boxsize.Add(line,pos=(5,0),span=(1,15),flag=wx.EXPAND|wx.BOTTOM|wx.TOP)

    self.textprint = wx.TextCtrl(panel, pos=(0, 0))
    self.textprint.SetFont(font)  # 文本框里面格式
    self.textprint.BackgroundColour = 'red'
    boxsize.Add(self.textprint, pos=(6,0),span=(1,15),flag=wx.LEFT | wx.EXPAND)


    gridsizer = wx.GridSizer(cols=16, rows=2, vgap=1, hgap=1)

    # tc1 = wx.TextCtrl(panel)
    # sizer.Add(tc1, pos=(2, 1), span=(1, 3), flag=wx.TOP | wx.EXPAND)
    #

    for x in range(32):
        exec("self.btn%s = wx.TextCtrl(panel,size=(5, 30))" % (x))
    for x in range(32):
        exec("self.btn%s.SetFont(font)" % (x))

    for i in range(32):
        exec("self.btn%s.BackgroundColour = 'white'" % i)

    list = []
    for i in range(0,32):
        exec("list.append((self.btn%s, 0, wx.EXPAND))"%i)
    print(list)
    gridsizer.AddMany(list)
    boxsize.Add(gridsizer,pos=(7, 0), span=(1, 15), flag=wx.EXPAND|wx.TOP|wx.LEFT|wx.RIGHT, border=1)


    text = wx.StaticText(panel, label='HEX:')
    text.SetForegroundColour("white")
    # text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    boxsize.Add(text, pos=(8, 0), flag=wx.TOP | wx.LEFT | wx.BOTTOM, border=5)

    tc = wx.TextCtrl(panel)
    boxsize.Add(tc, pos=(8, 1), span=(1, 4), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    buttonOK = wx.Button(panel, label='左移:')
    # buttonOK.SetForegroundColour("white")
    # buttonOK.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    buttonOK.SetFont(font2)
    boxsize.Add(buttonOK, pos=(8, 7), flag=wx.RIGHT | wx.BOTTOM, border=5)

    tc = wx.TextCtrl(panel)
    boxsize.Add(tc, pos=(8, 9), span=(1, 5), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)


    text = wx.StaticText(panel, label='DEC:')
    text.SetForegroundColour("white")
    # text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    boxsize.Add(text, pos=(9, 0), flag=wx.TOP | wx.LEFT | wx.BOTTOM, border=5)

    tc = wx.TextCtrl(panel)
    boxsize.Add(tc, pos=(9, 1), span=(1, 4), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    buttonOK = wx.Button(panel, label='右移:')
    # buttonOK.SetForegroundColour("white")
    # buttonOK.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    buttonOK.SetFont(font2)
    boxsize.Add(buttonOK, pos=(9, 7), flag=wx.RIGHT | wx.BOTTOM, border=5)

    tc = wx.TextCtrl(panel)
    boxsize.Add(tc, pos=(9, 9), span=(1, 5), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)


    text = wx.StaticText(panel, label='Yield[L:H]')
    text.SetForegroundColour("white")
    # text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    boxsize.Add(text, pos=(10, 0), flag=wx.TOP | wx.LEFT | wx.BOTTOM, border=5)


    tc = wx.TextCtrl(panel)
    boxsize.Add(tc, pos=(10, 1), span=(1, 1), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    text = wx.StaticText(panel, label='  :')
    text.SetForegroundColour("white")
    # text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    boxsize.Add(text, pos=(10, 2), flag=wx.TOP | wx.LEFT | wx.BOTTOM, border=5)


    tc = wx.TextCtrl(panel)
    boxsize.Add(tc, pos=(10, 3), span=(1, 2), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    buttonOK = wx.Button(panel, label='计算')
    # buttonOK.SetForegroundColour("white")
    # buttonOK.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    buttonOK.SetFont(font2)
    boxsize.Add(buttonOK, pos=(10, 7), flag=wx.RIGHT | wx.BOTTOM, border=5)

    tc = wx.TextCtrl(panel)
    boxsize.Add(tc, pos=(10, 9), span=(1, 5), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)


    line = wx.StaticLine(panel)
    boxsize.Add(line, pos=(11, 0), span=(1, 15), flag=wx.EXPAND | wx.BOTTOM | wx.TOP)

    text = wx.StaticText(panel, -1,label = "音乐和闹钟", style=wx.ALIGN_LEFT)
    font1 = wx.Font(12, wx.ROMAN, wx.ITALIC, wx.NORMAL)

    text.SetForegroundColour("white")
    text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    boxsize.Add(text, pos=(12, 0), span=(1, 15))

    line = wx.StaticLine(panel)
    boxsize.Add(line, pos=(13, 0), span=(1, 15), flag=wx.EXPAND | wx.BOTTOM | wx.TOP)

    t = time.strftime("%H:%M:%S", time.localtime())  # 设置初始值
    t = "当前时间:" + t
    self.text1 = wx.StaticText(panel, -1, t)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    self.text1.SetFont(font)
    self.text1.SetForegroundColour("white")


    self.timer = wx.Timer(self)  # 创建一个计时器对象
    self.Bind(wx.EVT_TIMER, self.Time, self.timer)  # 绑定计时器事件
    self.timer.Start(1000)  # 计时器计时1秒

    boxsize.Add(self.text1, pos=(14, 0), span=(1, 2))



    buttonOK = wx.Button(panel, label="开始时间:")
    # buttonOK.SetForegroundColour("white")
    # buttonOK.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    buttonOK.SetFont(font2)
    boxsize.Add(buttonOK, pos=(14, 2), flag=wx.RIGHT | wx.BOTTOM, border=5)


    self.text_alarm = wx.TextCtrl(panel, pos=(0, 0))
    self.text_alarm.SetFont(font)  # 文本框里面格式
    self.text_alarm.BackgroundColour = 'white'
    boxsize.Add(self.text_alarm, pos=(14,3),span=(1,1),flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    buttonOK = wx.Button(panel, label="倒计时:")
    # buttonOK.SetForegroundColour("white")
    # buttonOK.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    buttonOK.SetFont(font2)
    boxsize.Add(buttonOK, pos=(14, 4), flag=wx.RIGHT | wx.BOTTOM, border=5)

    self.text_alarm = wx.TextCtrl(panel, pos=(0, 0))
    self.text_alarm.SetFont(font)  # 文本框里面格式
    self.text_alarm.BackgroundColour = 'white'
    boxsize.Add(self.text_alarm, pos=(14, 5), span=(1, 1), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)


    textclk = wx.StaticText(panel, -1,label = "闹钟时间:", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    boxsize.Add(textclk, pos=(15, 0),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))

    self.text_alarm_p = wx.TextCtrl(panel, pos=(0, 0))
    self.text_alarm_p.SetFont(font)  # 文本框里面格式
    self.text_alarm_p.BackgroundColour = 'white'
    boxsize.Add(self.text_alarm_p, pos=(15,1),span=(1,1),flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)


    buttonOK = wx.Button(panel, label="结束时间:")
    # buttonOK.SetForegroundColour("white")
    # buttonOK.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    buttonOK.SetFont(font2)
    boxsize.Add(buttonOK, pos=(15, 2), flag=wx.RIGHT | wx.BOTTOM, border=5)

    self.text_alarm = wx.TextCtrl(panel, pos=(0, 0))
    self.text_alarm.SetFont(font)  # 文本框里面格式
    self.text_alarm.BackgroundColour = 'white'
    boxsize.Add(self.text_alarm, pos=(15,3),span=(1,1),flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    textclk = wx.StaticText(panel, -1,label = "  用时:", style=wx.ALIGN_LEFT | wx.ALIGN_CENTRE |wx.ALIGN_CENTRE_VERTICAL)
    font = wx.Font(22, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL, faceName="黑体")
    textclk.SetFont(font)
    textclk.SetForegroundColour("white")
    boxsize.Add(textclk, pos=(15, 4),flag=wx.TOP | wx.LEFT | wx.BOTTOM, span=(1, 1))

    self.text_alarm = wx.TextCtrl(panel, pos=(0, 0))
    self.text_alarm.SetFont(font)  # 文本框里面格式
    self.text_alarm.BackgroundColour = 'white'
    boxsize.Add(self.text_alarm, pos=(15, 5), span=(1, 1), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)


    self.fbb = wx.lib.filebrowsebutton.FileBrowseButton(panel,fileMode = wx.FD_OPEN,labelText="音乐:",size = (280,-1), buttonText= "Browse2",initialValue = r"E:\Doctor_Chen\wav1.wav", fileMask="*.wav",labelWidth = 10)
    self.fbb.SetBackgroundColour("white")


    self.play_button = wx.Button(panel, wx.ID_ANY, "播放")

    boxsize.Add(self.fbb, pos=(16, 0), span=(1, 3), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)
    boxsize.Add(self.play_button,pos=(16, 3) , flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    self.play_button.Bind(wx.EVT_BUTTON, self.onPlay)


    self.play_button = wx.Button(panel, wx.ID_ANY, "暂停")
    boxsize.Add(self.play_button,pos=(16, 4) , flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    self.type = ["单曲循环", "随机播放","循环播放"]
    xxx = wx.ComboBox(panel, -1, "单曲循环", choices=self.type)
    boxsize.Add(xxx, pos=(16, 5), span=(1, 1), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    self.fbb = wx.lib.filebrowsebutton.FileBrowseButton(panel,fileMode = wx.FD_OPEN,labelText="保存:",size = (280,-1), buttonText= "Browse2",initialValue = r"E:\Doctor_Chen\wav1.wav", fileMask="*.wav",labelWidth = 10)
    self.fbb.SetBackgroundColour("white")
    boxsize.Add(self.fbb, pos=(17, 0), span=(1, 3), flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)

    self.play_button = wx.Button(panel, wx.ID_ANY, "录音")
    boxsize.Add(self.play_button,pos=(17, 3) , flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)


    self.play_button = wx.Button(panel, wx.ID_ANY, "暂停")
    boxsize.Add(self.play_button,pos=(17, 4) , flag=wx.EXPAND | wx.LEFT | wx.RIGHT, border=5)


    line = wx.StaticLine(panel)
    boxsize.Add(line, pos=(18, 0), span=(1, 15), flag=wx.EXPAND | wx.BOTTOM | wx.TOP)

    text = wx.StaticText(panel, -1, label="陈依婷", style=wx.ALIGN_LEFT)
    font1 = wx.Font(12, wx.ROMAN, wx.ITALIC, wx.NORMAL)

    text.SetForegroundColour("white")
    text.SetBackgroundColour("black")
    font2 = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL)
    text.SetFont(font2)
    boxsize.Add(text, pos=(19, 0), span=(1, 15))

    line = wx.StaticLine(panel)
    boxsize.Add(line, pos=(20, 0), span=(1, 15), flag=wx.EXPAND | wx.BOTTOM | wx.TOP)

    image1 = wx.Image("1.jpg", wx.BITMAP_TYPE_JPEG).Rescale(620, 120).ConvertToBitmap()
    bmp1 = wx.StaticBitmap(panel, -1, image1)  # 转化为wx.Sta
    boxsize.Add(bmp1, pos=(21, 0),span=(12, 15), flag=wx.ALL, border=5)

    # # 向panel中添加图片
    # image = wx.Image("1.jpg", wx.BITMAP_TYPE_JPEG).ConvertToBitmap()
    # wx.StaticBitmap(panel, -1, bitmap=image, pos=(1, 825), size=(400, 200))

    # img = wx.Image("1.jpg",wx.BITMAP_TYPE_JPEG).ConvertToBitmap()
    # self.sBmp = wx.StaticBitmap(self, wx.ID_ANY, wx.BitmapFromImage(img))
    # # self.sBmp = wx.StaticBitmap(self, wx.ID_ANY, wx.BitmapFromImage(img))
    # boxsize.Add(self.sBmp, pos=(21, 0), proportion=0, flag=wx.ALL, border=10)

    # img = wx.Image(image, wx.BITMAP_TYPE_ANY)
    # self.sBmp = wx.StaticBitmap(self, wx.ID_ANY, wx.BitmapFromImage(img))
    #
    # sizer = wx.BoxSizer()
    # sizer.Add(item=self.sBmp, proportion=0, flag=wx.ALL, border=10)
    # self.SetBackgroundColour('green')
    # self.SetSizerAndFit(sizer)


    panel.SetSizerAndFit(boxsize)
    self.textprint.SetValue(self.equation)


def Time(self, event):
    t1 = "当前时间: " + time.strftime("%H:%M:%S", time.localtime())
    self.text1.SetLabel(t1)
    for i in range(0, 24):
        temp = "{:0>2d}:00:00".format(i)
        # if t == temp:  # 判断是否为整点
        if t1 == "当前时间: " + self.text_alarm_p.GetValue():
            # filename = "E:\Doctor_Chen\00. YT\\" + "{:0>2d}.wav".format(i)  # 找到对应的wav文件路径
            filename = self.fbb.GetValue()
            self.Sound(filename)  # 播放声音
            break

def Sound(self, filename):
    f = wave.open(filename, 'rb')  # 加载音频文件(wav)
    pms = f.getparams()  # 获取音频的属性参数
    nchannels, sampwidth, framerate, nframes = pms[:4]  # 单独提取出各参数的值,并加以定义
    p = pyaudio.PyAudio()  # 创建一个播放器
    s = p.open(format=p.get_format_from_width(sampwidth), channels=nchannels, rate=framerate,
               output=True)  # 将音频转换为音频流
    while True:
        data = f.readframes(1024)  # 按照1024大小的块,读取音频数据,得到一系列二进制编码
        if data == b'':
            break
        s.write(data)  # 开始按照音频的参数,播放音频
    s.close()
    p.terminate()

# def alear_time(self):
#     for i in range(0, 24):
#         temp = "{:0>2d}:00:00".format(i)
#         # if t == temp:  # 判断是否为整点
#         if self.t == "当前时间: " + str(self.text_alarm_p.GetValue()):
#             # filename = "E:\Doctor_Chen\00. YT\\" + "{:0>2d}.wav".format(i)  # 找到对应的wav文件路径
#             filename = self.fbb.GetValue()
#             self.Sound(filename)  # 播放声音
#             break

def onPlay(self,event):
    filename = self.fbb.GetValue()
    print(filename)
    self.Sound(filename)  # 播放声音

class App(wx.App):

def OnInit(self):
    self.frame = MyCalculator()
    self.frame.Bind(wx.EVT_CLOSE, self.OnClose, self.frame)
    self.frame.Show()
    return True

# def OnOtherColor(self, event):
#     '''
#     使用颜色对话框
#     '''
#     dlg = wx.ColourDialog(self)
#     dlg.GetColourData().SetChooseFull(True)  # 创建颜色对象数据
#     if dlg.ShowModal() == wx.ID_OK:
#         self.paint.SetColor(dlg.GetColourData().GetColour())  # 根据选择设置画笔颜色
#     dlg.Destroy()

def OnClose(self, event):
    dlg = wx.MessageDialog(None, "是否要关闭窗口?", "请确认", wx.YES_NO | wx.ICON_QUESTION)
    retCode = dlg.ShowModal()
    if (retCode == wx.ID_YES):
        self.frame.Destroy()
    else:
        pass

if name == ‘main’:
app = App()
# job = Job(app)
# job.start()

app.MainLoop()

import pyperclip
import pyautogui
import win32gui
import re
import win32con
import time
import webbrowser as web
from selenium import webdriver

class windows_api:
def init(self):
self._handle = None

def _windows_enum_callback(self,hwnd,wildcard):
    # win32gui.EnumWindows()
    if re.match(wildcard,str(win32gui.GetWindowText(hwnd))) != None:
        self._handle = hwnd

def find_window_wildcard(self,wildcard):
    self._handle = None
    win32gui.EnumWindows(self._windows_enum_callback,wildcard)

def set_foreground(self):
    done = False
    if self._handle > 0:
        win32gui.SetForegroundWindow(self._handle)
        win32gui.SendMessage(self._handle,win32con.WM_SYSCOMMAND,win32con.SC_MAXIMIZE,0)
        done = True
    return done

if name == “main”:
# Point(x=694, y=346) #百度框绝对坐标
# Point(x=800, y=195) #taobao
content = “篮球”
list = [“https://www.baidu.com/”,“https://www.taobao.com/”]
web.open(list[0])

# driver = webdriver.Chrome(executable_path=r"D:\tools\python38\Scripts\chromedriver.exe")
# driver.maximize_window()
# driver.get(list[1])
time.sleep(1)
# driver.manage().window().maximize()

# driver.execute_script("document.body.style.zoom='80%'")

# time.sleep(2)
# driver.close()


# Window = windows_api()
# Window.find_window_wildcard(".*淘宝.*")
# Window.set_foreground()
time.sleep(0.5)
print(pyautogui.position())

# driver.execute_script("document.body.style.zoom='100%'")
#
pyautogui.click(679,348)
pyperclip.copy(content)
pyautogui.click(679,348)
pyautogui.hotkey("ctrl","V")
time.sleep(1)
pyautogui.hotkey("enter")
# pyautogui.click(752,151)
# Point(x=1310, y=205)
-- coding: utf-8 -

import webbrowser as web
import time
import os

urllist=[
‘https://www.baidu.com/’,
‘https://www.csdn.net/’
]

我本地的chrome浏览器文职 chromepath = r’C:\Users\15420\AppData\Local\Google\Chrome\Application\chrome.exe’ # 注册浏览器对象 web.register(‘chrome’, None, web.BackgroundBrowser(chromepath)) # 打开浏览器 web.get(‘chrome’).open_new_tab(‘www.baidu.com’)

for j in range(0,6):#设置循环的总次数
i=0
while i<1 : #一次打开浏览器访问的循环次数
for url in urllist:
web.open(url) #访问网址地址,语法 .open(url,new=0,Autorasise=True),设置 new 的值不同有不同的效果0、1、2
i=i+1
time.sleep(2) #设置每次打开新页面的等待时间
else:

    time.sleep(5) #设置每次等待关闭浏览器的时间
    os.system('taskkill /IM chrome.exe')  #你设置的默认使用浏览器,其他的更换下就行

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/905342.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-15
下一篇2022-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存