当前位置: 首页 > article >正文

自用函数(持续更新)

 防止win32com结束后有excel进程残留

import win32com.client
import win32process,win32api,win32con
excel = win32com.client.DispatchEx('Excel.Application')
def close_excel_by_force(excel):  # 关闭进程

        # Get the window's process id's
        hwnd = excel.Hwnd
        #hwnd = win32gui.FindWindowEx(0,0,None,name)
        t, p = win32process.GetWindowThreadProcessId(hwnd)
        # Ask window nicely to close
        try:
            handle = win32api.OpenProcess(win32con.PROCESS_TERMINATE, 0, p)
            if handle:
                win32api.TerminateProcess(handle, 0)
                win32api.CloseHandle(handle)
        except:
            pass

防止shutil删除文件时因文件属性删除失败

import shutil
shutil.rmtree(path,onerror=remove_readonly)
def remove_readonly(func, path, _):  # 错误回调函数,改变只读属性位,重新删除
    #"Clear the readonly bit and reattempt the removal"
    os.chmod(path, stat.S_IWRITE)
    func(path)

清空文件夹

import shutil,os
def clearfolder(self,path):
    if os.path.exists(path):
        shutil.rmtree(path,onerror=remove_readonly)
        time.sleep(1)
    os.makedirs(path)


http://www.kler.cn/news/134924.html

相关文章:

  • 数理统计的基本概念(一)
  • Selenium UI 自动化
  • Mapmost Alpha,一款非常好用且强大的三维城市创建工具~!
  • 反渗透水处理成套设备有哪些
  • 分享职业技术培训类型
  • HarmonyOS脚手架:快捷实现ArkTs中json转对象
  • Linux环境搭建(tomcat,jdk,mysql下载)
  • JS进阶——高阶技巧
  • 2 Redis的高级数据结构
  • 2024年测试工程师必看系列之fiddler设置手机端抓包全套教程
  • 为什么选择B+树作为数据库索引结构?
  • 前端常用utils方法持续更新中
  • 为什么同样是做测试,别人年薪30W+?我10k!!!
  • 采集淘宝天猫整店商品api(店铺列表、店铺所有商品)
  • Unity中 Start和Awake的区别
  • 医生ai数字人线上应用有效缓解了医疗资源不均的问题
  • buildadmin+tp8表格操作(7.1)表格的事件监听(el-table中的事件)
  • Arcgis js Api日常天坑问题3——加载geojson图层,元素无属性
  • rabbitMQ的direct模式的生产者与消费者使用案例
  • java list里面根据条件查找某个元素的下标
  • Linux入门攻坚——6、磁盘管理——分区及文件系统管理
  • GOTS认证资讯-7.0版关于环境准则的要求
  • 京东API接口获取京东平台商品详情数据,SKU,价格参数及其返回值说明
  • 【Linux】20、进程状态:不可中断进程、iowait、僵尸进程、dstat strace pstree
  • Python-使用sqlite3模块
  • 广州华锐互动VRAR:VR教学楼地震模拟体验增强学生防震减灾意识
  • mac上配置maven
  • 十. Linux关机重启命令与Vim编辑的使用
  • 【如何让你的建筑设计更高效】推荐7个3DMAX建筑设计的实用插件
  • 11月20日星期一今日早报简报微语报早读