python代码如何实现切换中英文输入法

 更新时间:2023年11月08日 08:37:51   作者:飞翔的宫保鸡丁  
这篇文章主要介绍了python代码如何实现切换中英文输入法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

python代码切换中英文输入法

代码实现切换中英文输入法

from win32con import WM_INPUTLANGCHANGEREQUEST
import win32gui
import win32api

def set_english_inputer():
    # 0x0409为英文输入法的lid_hex的 中文一般为0x0804
    hwnd = win32gui.GetForegroundWindow()
    title = win32gui.GetWindowText(hwnd)
    im_list = win32api.GetKeyboardLayoutList()
    im_list = list(map(hex, im_list))
    result = win32api.SendMessage(hwnd, WM_INPUTLANGCHANGEREQUEST, 0, 0x0409)
    if result == 0:
        print("英文输入法切换成功!")

python万能切换输入法英文状态

# 转换为英文状态
def eng_chin():
    import pyautogui
    from win32clipboard import GetClipboardData, OpenClipboard, CloseClipboard
    from win32con import CF_TEXT
    from win32con import CF_UNICODETEXT
    import subprocess
    # 打开搜索框
    subprocess.run('start ms-settings:search', shell=True)
    # subprocess.Popen(['explorer', 'shell:::{2559a1f3-21d7-11d4-bdaf-00c04f60b9f0}'])
    pyautogui.press('`')
    pyautogui.hotkey('shift','1')
    pyautogui.hotkey('shift','4')
    pyautogui.hotkey('shift','5')
    pyautogui.hotkey('shift','6')
    pyautogui.hotkey('ctrl','a')
    pyautogui.hotkey('ctrl','c')
    OpenClipboard()  # 读取剪贴板的数据
    clipboard = GetClipboardData(CF_UNICODETEXT)
    CloseClipboard() #关闭
    pyautogui.press('backspace')
    text=clipboard
    if '·' in text and '!'in text and '¥'in text and '%'in text and '……'in text:
        print('当前输入法为中文状态')
        pyautogui.press('shift')  # 切换英文状态
        print('已切换英文状态')
        # 关闭搜索框
        subprocess.run('taskkill /F /IM SearchUI.exe', shell=True)
        return '中文'
    print('当前输入法为英文状态')
    # 关闭搜索框
    subprocess.run('taskkill /F /IM SearchUI.exe', shell=True)
    return  '英文'

eng_chin()

系统 默认输入法,搜狗不能成功

# 指定系统默认输入法,切换中文状态
def input_fa():
    import uiautomation as uia
    import pyautogui
    win = uia.PaneControl(ClassName="Shell_TrayWnd",Name="任务栏")
    retext=win.ButtonControl(ClassName="IMEModeButton").Name
    print(retext)
    if '中文' in retext.replace('\n',''):
        pyautogui.press('shift') #切换状态
    return retext
input_fa()

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解Python常用标准库之os模块与shutil模块

    详解Python常用标准库之os模块与shutil模块

    os系统模块与shutil文件操作模块是Python常用的标准库,本文将通过示例详细讲解一下二者的使用,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-06-06
  • pycharm中django框架连接mysql数据库的方法

    pycharm中django框架连接mysql数据库的方法

    这篇文章主要介绍了pycharm中django框架连接mysql数据库的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • 基于Python实现语音合成小工具

    基于Python实现语音合成小工具

    TTS(Text To Speech)是一种语音合成技术,可以让机器将输入文本以语音的方式播放出来,实现机器说话的效果。本文将使用pyttsx3库作为示范,编写一个语音合成小工具,感兴趣的可以了解一下
    2022-12-12
  • Python实现递归遍历文件夹并删除文件

    Python实现递归遍历文件夹并删除文件

    本文给大家汇总了3个Python实现遍历文件夹并删除的代码,主要是给大家分享下这3种方法的实现思路,有需要的小伙伴可以参考下
    2016-04-04
  • Python实现多图绘制系统的示例代码

    Python实现多图绘制系统的示例代码

    这篇文章主要为大家详细介绍了Python如何实现制作一个多图绘制系统,文中的示例代码简洁易懂,具有一定的借鉴价值,感兴趣的小伙伴可以学习一下
    2023-09-09
  • python中的列表和元组区别分析

    python中的列表和元组区别分析

    这篇文章主要介绍了python中的列表和元组区别分析,需要的朋友可以参考下
    2020-12-12
  • 安装python-docx后,无法在pycharm中导入的解决方案

    安装python-docx后,无法在pycharm中导入的解决方案

    这篇文章主要介绍了安装python-docx后,无法在pycharm中导入的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Python selenium模块的安装和配置教程

    Python selenium模块的安装和配置教程

    这篇文章主要为大家介绍了python中selenium模块的安装和配置环境变量教程、提取数据操作、无头模式,有需要的朋友可以借鉴参考下,希望能够对大家有所帮助
    2022-10-10
  • 使用Python模块进行数据处理的详细步骤

    使用Python模块进行数据处理的详细步骤

    Python 提供了丰富的模块和库,用于处理各种类型的数据,本文介绍了一些常用的模块和库,以及如何使用它们进行数据处理的详细步骤和代码示例,对我们的学习或工作有一定的帮助,需要的朋友可以参考下
    2025-02-02
  • TensorFlow固化模型的实现操作

    TensorFlow固化模型的实现操作

    这篇文章主要介绍了TensorFlow固化模型的实现操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05

最新评论