python自动输入账号密码_使用python打开cmd并自动输入密码

本文介绍了如何在Python中利用win32console和subprocess模块,实现在Windows环境下自动输入账号密码并调用runas命令以新用户上下文打开命令提示符。通过逐字符读取并模拟键盘输入,实现了自动化过程。
摘要由CSDN通过智能技术生成

这段代码实际上可以工作(在Windows2008服务器上测试)。我用它为另一个用户调用runas,并传递他的密码。使用新用户上下文打开的新命令提示,无需输入密码。

请注意,您必须安装pywin32才能访问win32 API。

想法是:对于Popen命令,在没有任何输入重定向的情况下,重定向输出

逐字符读取,直到遇到“:”(密码提示的最后一个字符)。

使用win32包将密钥事件发送到控制台,最后使用\r结束密码输入。import win32console, win32con, time

import subprocess

username = "me"

domain = "my_domain"

password ="xxx"

free_console=True

try:

win32console.AllocConsole()

except win32console.error as exc:

if exc.winerror!=5:

raise

## only free console if one was created successfully

free_console=False

stdin=win32console.GetStdHandle(win32console.STD_INPUT_HANDLE)

p = subprocess.Popen(["runas",r"/user:{}\{}".format(domain,username),"cmd.exe"],stdout=subprocess.PIPE)

whil

Python使用自动化工具(如Selenium、Puppeteer等)进行网站登录并清空浏览器缓存或清除已保存的账号信息,通常需要以下几个步骤: 1. **安装依赖**: 首先确保已经安装了相应的库,例如`selenium`用于控制浏览器,`webdriver_manager`帮助管理WebDriver(浏览器驱动)。 ```bash pip install selenium webdriver_manager ``` 2. **初始化浏览器和驱动**: 使用`webdriver_manager`下载并启动对应的浏览器驱动(如ChromeDriver或FirefoxDriver)。 ```python from webdriver_manager.chrome import ChromeDriverManager driver = webdriver.Chrome(ChromeDriverManager().install()) # 或者 for Firefox # driver = webdriver.Firefox() ``` 3. **清除浏览器数据**: 调用浏览器的方法来清理cookies、缓存和已保存的登录信息。这里以Selenium为例: ```python from selenium.webdriver.common.desired_capabilities import DesiredCapabilities driver.get("about:blank") # 清除当前页面 driver.delete_all_cookies() # 删除所有cookies driver.execute_cdp_cmd('Network.clearBrowserCache', {}) # 清理浏览器缓存 driver.execute_cdp_cmd('Network.clearBrowserCookies', {}) # 清理cookies ``` 4. **模拟登录过程**: 使用Selenium的`find_element_by_*`方法找到输入框,并输入新的账号密码: ```python username_input = driver.find_element_by_name('username') password_input = driver.find_element_by_name('password') username_input.send_keys('new_username') password_input.send_keys('new_password') login_button = driver.find_element_by_id('login-button') # 根据实际ID定位登录按钮 login_button.click() # 点击登录 ``` 5. **等待页面加载完成**: 可能需要时间让页面加载,可以添加等待逻辑: ```python from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.TAG_NAME, 'your-loading-indicator'))) ``` 6. **验证登录状态**: 登录后检查是否跳转到正确的登录后页面,确认登录成功。 完成上述操作后,浏览器应该会清空之前保存的账户信息并允许你输入账号密码进行登录。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值