Muk*_*ran 2 java cookies webdriver deprecated selenium-webdriver
众所周知的弃用问题导致我出现问题.以下行"到期=新日期(dt);" 是目标脚本.详细解释我成功习惯了
Date expiry = null;
String dt;
if(!(dt=str.nextToken()).equals("null"));
{
expiry = new Date(dt);
}
Run Code Online (Sandbox Code Playgroud)
在scrips中使用这些行来从文件中读取cookie.是的,"日期"已弃用.我已经阅读了一些解决方案,但在纠正错误时仍然存在一系列错误.
什么是正确的"日期".我也在下面提供完整的脚本
package test;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.Date;
import java.util.StringTokenizer;
import org.openqa.selenium.Cookie;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class Reader {
public static void main(String[] args) {
System.setProperty ("webdriver.chrome.driver", "D:\\Selenium\\chromedriver_win32\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://www.gmail.com");
try{
File f = new File("browser.data");
FileReader fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr);
String line;
while ((line = br.readLine())!=null){
StringTokenizer str = new StringTokenizer (line, ";");
while (str.hasMoreTokens()) {
String name = str.nextToken();
String value = str.nextToken();
String domain = str.nextToken();
String path = str.nextToken();
Date expiry = null;
String dt;
if(!(dt=str.nextToken()).equals("null"));
{
expiry = new Date(dt);
}
boolean isSecure = new Boolean(str.nextToken()).booleanValue();
Cookie ck = new Cookie (name,value,domain,path,expiry,isSecure);
driver.manage().addCookie(ck);
br.close();
}
}
}
catch (Exception ex)
{
ex.printStackTrace();
}
driver.get("http://gmail.com");
}
}
Run Code Online (Sandbox Code Playgroud)
Pri*_*esh 13
不推荐使用的方法的javadoc通常会告诉您替换方法的内容.在这种情况下,https : //docs.oracle.com/javase/7/docs/api/java/util/Date.html上的Date(String)的javadoc 提到了以下内容:
已过时.从JDK version 1.1开始,由DateFormat.parse(String s)取代.
因此,如果您使用的是默认日期格式,则可以使用以下内容替换日期构造代码;
expiry = java.text.DateFormat.getDateInstance().parse(dt);
Run Code Online (Sandbox Code Playgroud)
如果您有自定义日期格式,则必须使用java.text.SimpleDateFormat类而不是java.text.DateFormat.
.
处理日期字符串的一种方法是这样的:
String DEFAULT_PATTERN = "yyyy-MM-dd HH:mm:ss";
String yourDateString = "2015-01-01 12:00:00";
DateFormat formatter = new SimpleDateFormat(DEFAULT_PATTERN);
Date myDate = formatter.parse(yourDateString);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14442 次 |
| 最近记录: |