如何 Select 当前日期 and/or 使用系统变量或系统调用通过 Selenium 以 Python 日期和名称格式转发信息

How to Select Current Date and/or Use System Variables or System Calls to Forward Information with Selenium in Python Like Dates and Name Formats

所以我正在尝试 select 当前日期,或者使用来自 Powershell 的系统调用或 Linux/Mac 到带有 OS 模块的系统变量。我需要帮助来了解如何实现这一目标的最佳方式。

最好我喜欢选项2,因为系统变量将始终由计算机设置。所以我知道日期总是我需要的并且是最新的。

这是一张照片。

请注意,今天突出显示的部分是 27 号,也就是今天的日期。 但是,我认为系统变量可以将日期格式化为我想要的格式。 在 powershell 中,我知道命令是 Get-Date -UFormat %D。但是,我想知道如何传递它,我也认为我的 XPATH 是错误的。

# Select Current Date
# Set Variable for OS_DATE to be in Format MM/DD/YYYY
# For Powershell $(Get-Date -UFormat %D)
# //*[@id='createdTo']/option[text()='01/27/2020']
#element = WebDriverWait(browser, 20).until(
#                                EC.element_to_be_clickable((By.XPATH,"//*[@id='createdTo']/option[text()='01/27/2020']")))
#element.click();

有人有什么建议吗?我试图在那里输入始终最新的日期,这是我需要更新的元素的来源。

<input type="text" aria-labelledby="dateTo" class="form-control ng-pristine ng-isolate-scope ng-valid-date ng-not-empty ng-valid ng-valid-required ng-touched" datepicker-popup="MM/dd/yyyy" ng-model="dateTo" show-weeks="false" is-open="uploadedTo" placeholder="MM/DD/YYYY" ng-change="changeUploadDate();" ng-keydown="dateInputKeyDown($event,'uploadedTo')" required="" name="createdTo" id="createdTo" style="">

这里还有 my Github Repository

上的源代码

我已经为此工作了一段时间,甚至从下面的回复中吸取了一些技巧。我终于想出了如何更新这个领域。但是,它不会覆盖该字段。我附上了屏幕截图和更新字段以展示整体问题的代码。

这是输入日期的代码

element = WebDriverWait(browser, 20).until(
                EC.element_to_be_clickable((By.XPATH,"//input[@id='createdTo']")))
element.send_keys(date);

目前代码已被注释掉,因为不正确的日期会阻止文件下载。

所以这实际上适用于在我从代码中设置变量后打印日期。

element = WebDriverWait(browser, 20).until(
                EC.element_to_be_clickable((By.XPATH,"//input[@id='createdTo']")))
element.send_keys(date);

变量显然是date,定义为

from datetime import date

# System Variables
today = date.today()
date = today.strftime("%m/%d/%Y")