背景介绍:1.由于公司业务人员window系统没有管理员用户权限,使用的是普通用户权限登陆的,因此不能自己安装软件。但是有时候涉及到软件的大批量更新,人工一个一个的去安装,效率太低,人工成本太高,因此写了如下脚本,可以授予业务临时管理员权限,对软件进行下载安装。大大节约了人工成本,提高了本部门的工作效率。
import timeimport pyautogui
import win32api
import requests
import win32conimport os
import subprocess# 获取本机管理员名称
def get_windows_users():users = []cmd = 'net user'output = subprocess.check_output(cmd, shell=True).decode('utf-8', errors="ignore")lines = output.split(' ')for line in lines:if 'User accounts' in line or '---------' in line:continueif line.strip() != '':users.append(line.split()[0])# 对系统的管理员加以判断if 'sysadmin' in users:admin_user = 'sysadmin'else:admin_user = 'PC000'return admin_user# 安装软件
def install_software():url = 'https://work.weixin.qq.com/wework_admin/commdownload?platform=win&from=wwindex'win32api.MessageBox(0, '开始下载企微', '下载软件', win32con.MB_OK)response = requests.get(url)software_path = r'C:\poi\WXWork_latest.exe'with open(software_path, 'wb') as f:f.write(response.content)print('软件下载完成')windows_admin_user = get_windows_users()os.system("start cmd /k runas /user:" + windows_admin_user + " \"{}\"".format(software_path))time.sleep(2)# 模拟输入密码password = "12345678" # 替换为您的管理员密码for char in password:pyautogui.typewrite(char)time.sleep(0.1) # 添加适当的延迟以模拟人类输入速度# 模拟按下回车键以提交密码pyautogui.press('enter')install_software()