0

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

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

谁能指出我正确的方向?

提前致谢。

4

2 回答 2

0

我不确定我是否理解您的意思,即您是要编写一个小程序/扩展一个现有的小程序(正如您放置标签所建议的那样),还是您只是想在您的计算机上自动执行一项任务以跟随一组指令。

对于第一种情况,我相信您需要提供更多关于您正在尝试实现的目标,甚至是到目前为止您尝试了什么的更多信息。

如果您想创建宏,我强烈建议您查看AutoIt 之类的工具


如果我理解正确,您想申请从网站上为您复制表格。好吧,这似乎是一件简单的事情,但由于您对 Java 不太熟悉,它可能会变得一团糟。

基本上我可以提供的是采用最直接的方法,即:

  • 从您需要的网站检索源代码 (DOM)
  • 然后使用 Excel 的某些 API 将 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,尽管我从未尝试过,所以不要认为我的话是理所当然的。

于 2012-09-25T13:09:29.293 回答
0

我想你正在寻找这个技巧,它对我来说很好用。

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

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

java.awt.AWTPermission "accessClipboard";

于 2015-07-02T15:22:38.097 回答