WebDriver driver = new MyPhantomJSDriver(sessionId, 48105);
driver.findElement(By.name("username")).sendKeys(name);
driver.findElement(By.name("idcard")).sendKeys(idCard);
driver.findElement(By.name("cdrCondition.randpsw")).sendKeys(code);
String submit = "jQuery.ajax({"+"\n"
+" type: \"POST\","+"\n"
+" dataType: \"html\","+"\n"
+" url: \"/myTest.htm\","+"\n"
+" data: jQuery(\"form[name='form1']\").serialize(),"+"\n"
+" success: function (result) {"+"\n"
+" re=/(.|\\s|\\S)*(location.href.* error.html)(.|\\s|\\S)*/"+"\n"
+" if(re.test(result)){"+"\n"
+" window.myData=false;"+"\n"
+" return;"+"\n"
+" }"+"\n"
+" window.myData=true;"+"\n"
+" jQuery(\"body\").append(\"<iframe srcdoc='\"+result+\"'></iframe>\");"+"\n"
+" },"+"\n"
+" error: function(data) {"+"\n"
+" console.log(\"error:\"+data.responseText);"+"\n"
+" }"+"\n"
+" });";
WebDriverWait wait = new WebDriverWait(driver, 10);
((RemoteWebDriver) driver).executeScript(submit);
boolean success = (boolean)wait.until(new Function<WebDriver, Object>() {
public Object apply(@Nullable WebDriver driver) {
return ((RemoteWebDriver) driver).executeScript("return window.myData;");
}
});
if(!success){
return new Result(Constants.INPUTERROR, Constants.getMessage(Constants.INPUTERROR));
}
selenium 拦截网站非ajax数据,爬虫处理js
最新推荐文章于 2023-10-10 14:28:49 发布