如何从使用Java应用程序的网站复制数据表

时间:2012-09-25 12:51:35

标签: java applet automation

情况:我目前使用我的用户名和密码登录网站。然后我打开Java应用程序并单击显示我想要复制的信息行的页面。在屏幕的左上角是一个下拉框,在此框中选择每个选项会生成一个新的结果表。

任务:我试图找到一种自动化复制过程的方法,而不是手动选择每个选项并复制它。

有人能指出我正确的方向吗?

提前致谢。

2 个答案:

答案 0 :(得分:0)

我不确定我是否理解你的意思,那就是你想要编写一个applet /扩展现有的applet(当你标记建议时)或者你只是想在你的计算机上自动执行任务遵循一系列指示。

对于第一种情况,我相信你需要提供更多信息,说明你到底想要达到的目标,甚至是你到目前为止所尝试的内容。

如果您想创建一个宏,我强烈建议您查看AutoIt等工具


如果我理解正确,您希望制作一个应用程序,以便从网站复制表格。好吧,这似乎是一件简单的事情,但由于你对Java不太熟悉,它可能会变得混乱。

基本上我能提供的是采用最简单的方法,即:

  • 从您需要的网站
  • 中检索源代码(DOM)
  • 然后使用一些Excel for Excel解析XML(只是为了确保您不会混淆,网站DOM实际上是HTML,在某种意义上是XML)到XLS。

更确切地说,这里有一些简单的代码可以作为起点:

try {
    URL url = new URL("http://someurl.org");

    DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
    DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();

    Document doc = dBuilder.parse(url.openStream());
} catch (Exception e) {
    e.printStackTrace();
}

如果我没有遗漏任何东西,你应该能够以这种方式获取网站的DOM,然后只需使用一些XLS api将其转换为XLS文件(不要忘记你只需要解析它表,同时跳过其余内容)。你可以尝试Java Excel API,虽然我从来没有尝试过,所以不要把我的话当作理所当然。

答案 1 :(得分:0)

我认为你正在寻找this提示,它对我来说很好。

只需在位于Java \ jre6 \ lib \ security中的文件java.policy中的注释行下面添加以下行。

  

//任何人都可以阅读的“标准”属性

     

java.awt.AWTPermission“accessClipboard”;