为了账号安全,请及时绑定邮箱和手机立即绑定

将变量从 Powershell 传递到 Python

将变量从 Powershell 传递到 Python

蝴蝶不菲 2021-09-24 18:12:33
我有一个 powershell 脚本,它正在为我运行一些自动化,作为其中的一部分,我用 python 编写了一个脚本,它利用 selenium 打开网页,输入数据并退出。我需要为另一个网站做同样的事情,但它有一个登录页面。从我的 powershell 脚本中,我提示用户输入名称和密码,并将其保存到一个变量中。我正在努力解决的部分是将他们的输入传递给 python send_keys 函数。这甚至可能吗?我的PowerShell代码是 $usernme = Read-Host -Prompt 'Input Username'然后在python脚本中user = browser.find_element_by_xpath("""/elementname""")user.send_keys('$usernme')它只将 $usernme 发送到我正在写入的字段,而不是 $usernme 的值。是否可以从 powershell 脚本中获取此值并在我从 powershell 中调用 python 脚本时使用它。
查看完整描述

2 回答

?
跃然一笑

TA贡献1826条经验 获得超6个赞

您还可以尝试使用 C# 驱动程序直接从 powershell 运行您的 selenium 自动化。提取 WebDriver.dll(来自 Selenium.WebDriver.3.14.0.nupkg)并将其与您的 PS 脚本以及 geckodriver.exe(如果使用 firefox)一起放在文件夹中。下面是一个示例脚本,您可以将其用作起点:


Add-Type -Path ".\WebDriver.dll"

# put geckodriver.exe in the same folder


$driver = [OpenQA.Selenium.Firefox.FirefoxDriver]::new()


$driver.manage().timeouts().ImplicitWait = [timespan]::FromSeconds(5)


$driver.Navigate().GoToUrl("someurl")


$driver.FindElementByCssSelector(".some-button").Click()  


$driver.quit()


查看完整回答
反对 回复 2021-09-24
  • 2 回答
  • 0 关注
  • 258 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信