private static Logger logger = LoggerFactory.getLogger(CollectionFromWeb.class);
private static String url = "http://asdf+%E6%B0%91%E4%BA%8B%E6%A1%88%E4%BB%B6+%E6%A1%88%E4%BB%B6%E7%B1%BB%E5%9E%8B:%E6%B0%91%E4%BA%8B%E6%A1%88%E4%BB%B6";
private static String ajax = "var result;$.ajax(<url:\"http://asdf\", type: \"POST\",async: false,data: < \"Param\": \"cc\", \"Index\":{0}, \"Page\": 20, \"Order\": \"cc\", \"Direction\": \"asc\" >,success: function (data) <result==data;return result;>>)";
private static String requestUrl = "\"http://192.168.1.****/user!list.action\"";
/**
*
*/
private static final long serialVersionUID = 1L;
private CollectionFromWeb() {
}
/**
* 针对***定制抓取数据
*
* @return
*/
public synchronized static Boolean collection(String url) {
WebDriver driver = new FirefoxDriver();
driver.get(url);
// new WebDriverWait(driver, 20).until(new ExpectedCondition<Boolean>() {
// public Boolean apply(WebDriver d) {
// Boolean result = false;
// try {
// List<WebElement> e = d.findElement(By.xpath("//div[@id='resultList']"))
// .findElements(By.tagName("a"));
// for (WebElement we : e) {
// logger.debug(we.getAttribute("href"));
// }
// result = true;
// } catch (Exception e) {
// e.printStackTrace();
// }
// return result;
// }
// });
JavascriptExecutor js = (JavascriptExecutor) driver;
for (int i = 1; i < 2; i++) {
try {
System.out.println(MessageFormat.format(ajax, i, requestUrl).replace("<", "{").replace(">", "}"));
String result = (String) js.executeScript(
MessageFormat.format(ajax, i, requestUrl).replace("<", "{").replace(">", "}"), false);
Thread.sleep(2000);
System.out.println(result);
} catch (Exception e) {
// TODO Auto-generated catch block alert(data);
e.printStackTrace();
return false;
}
}
return true;
}
基于测试的爬虫selenium
最新推荐文章于 2024-03-15 18:59:07 发布