以编程方式设置jsoup解析的网页的值

时间:2013-08-16 20:19:04

标签: java jsoup

我正在尝试以编程方式将值设置为网页的文本字段。我使用JSOUP解析了页面,并了解了输入文本字段。我使用了以下代码:

Elements elements = doc.select("input[type=text]");
 for (Iterator<Element> iterator = elements.iterator(); iterator.hasNext();)
 {
     Element element = iterator.next();
     System.out.println(element);
     System.out.println(elements.attr("name"));
     System.out.println(elements.attr("value"));
 }

此代码工作正常,由于尚未在网页上设置该值,因此它显示为elements.attr(“value”)的空白。是否有可能以编程方式设置elements.attr(“value”)?请帮助。

2 个答案:

答案 0 :(得分:1)

您在Jsoup解析对象中所做的更改不会反映在页面上,因为这些对象与浏览器中显示的页面代码没有任何关联。

您应该期待AJAX​​从网页上的Java应用程序设置值。从您的页面到您的应用程序进行异步调用,并使用JavaScript设置回调所需的值。

答案 1 :(得分:1)

我认为这是像Selenium而不是jsoup这样的工具。使用selenium,您可以导航到您需要的页面,在页面中找到元素(例如表单)并设置其值。 Jsoup可以抓取页面的来源,并过滤掉你想要的元素,但我不知道如何使用jsoup单独添加页面。