Java 如何使用Selenium从URL中提取特定格式的日期?
使用: 我得到这样的东西:Java 如何使用Selenium从URL中提取特定格式的日期?,java,selenium,date-format,Java,Selenium,Date Format,使用: 我得到这样的东西: String URL = driver.getCurrentUrl(); 我必须提取日期并以这种格式打印:yyyy-mm-dd,即获取2020-11-30。有人知道吗? 谢谢 您可以使用给定的URL字符串创建一个Map paramMap 处理URL字符串,并将参数名称作为键和参数值作为值存储在此映射中 从这个Map中获取键datepicker的值,将其解析为日期对象,并将日期对象格式化为所需格式的字符串。由于java.util的日期时间API及其格式化API,Sim
String URL = driver.getCurrentUrl();
我必须提取日期并以这种格式打印:yyyy-mm-dd,即获取2020-11-30。有人知道吗?
谢谢
Map paramMap
映射中
Map
中获取键datepicker
的值,将其解析为日期对象,并将日期对象格式化为所需格式的字符串。由于java.util
的日期时间API及其格式化API,SimpleDataFormat
已经过时且容易出错,因此我建议您使用。有关现代日期时间API的更多信息,请访问java.time
date-time API和传统的java.util
date-time API
firstname=&lastname=&sex=Male&exp=1&datepicker=11%2F30%2F2020&photo=&continents=asia&submit=
我假设getCurrentUrl()返回完整的url,而不仅仅是查询字符串 在高层次上,我认为这个过程是
2020-11-30
2020-11-30
如果您不想使用该库
步骤3有一些选项,这取决于您需要的健壮程度
final HttpUrl currentUrl = HttpUrl.parse(driver.getCurrentUrl());
if (currentUrl != null) {
final String inputDate = currentUrl.queryParameter("datepicker");
}
燕-有更新吗?
final HttpUrl currentUrl = HttpUrl.parse(driver.getCurrentUrl());
if (currentUrl != null) {
final String inputDate = currentUrl.queryParameter("datepicker");
}
SimpleDateFormat parseFormatter = new SimpleDateFormat("dd-MM-yyyy");
Date date = parseFormatter.parse(inputDate);
SimpleDateFormat outputFormatter = new SimpleDateFormat("yyyy-MM-dd");
String date = outputFormatter.format(date);
System.out.println(date);