【问题标题】:How to code an automated bot that can browse and do operations on a webpage如何编写可以在网页上浏览和执行操作的自动化机器人
【发布时间】:2011-07-16 10:21:27
【问题描述】:

我需要编写一个需要执行以下操作的机器人:

转到一个jsp页面并 通过以下方式搜索:

  • 1:在搜索框上写东西
  • 2:点击搜索按钮(提交按钮)
  • 3:单击生成的按钮/链接之一(相同的 jsp 页面具有不同的输出)
  • 4:获取新页面的整个html(相同的jsp页面不同的输出)

第四个可以通过屏幕抓取来完成,我认为我不需要帮助。但我需要一些指导来执行从 1 到 3 的选项。任何链接或只是一些有助于我谷歌了解它的关键字将不胜感激。我打算用java来做这个。

【问题讨论】:

    标签: java screen-scraping bots


    【解决方案1】:

    我在铬中使用了硒。如果你想使用 selenium,你必须从http://www.seleniumhq.org/download/ 下载最新版本并在 netbeans 中实现或 eclipse jar 文件。 (Selenium Client & WebDriver Language Bindings, Selenium Standalone Server) 之后你必须从谷歌下载https://sites.google.com/a/chromium.org/chromedriver/——chrome 驱动程序也是最新版本,解压文件并保存在你的电脑上。

    【讨论】:

      【解决方案2】:

      先决条件:

      1. 硒 API。
      2. Mozilla Firefox(安装了 firebug 扩展)

      我们可以通过以下操作实现浏览器的启动,进入特定网页,搜索关键字并分析结果

      1. 启动网络浏览器(driver.launch()(selenium)
      2. 转到特定网页(driver.get("your web pager"))(selenium)
      3. 识别搜索框(使用fire bug(id,xml path.. etc)获取标识符
      4. 转到该框并输入您的搜索关键字 (webelement.sendkeys("your keyword") 并单击搜索按钮 (webelement.click())(selenium))
      5. 使用标识符单击所需结果并加载下一个网页(硒)

      【讨论】:

      • 答案并不详尽。请提供对您有用的示例代码
      【解决方案3】:

      您可以为此使用python-mechanize

      【讨论】:

        【解决方案4】:

        您只需要HTMLUnit

        这是对其描述的摘录

        HtmlUnit is a "GUI-Less browser for Java programs". It models HTML documents and provides an API that allows you to invoke pages, fill out forms, click links, etc... just like you do in your "normal" browser.

        P.S.:曾经用它来构建一个网页抓取项目;)

        【讨论】:

        • 哦,是的,HTMLUnit 是该用例中的 工具,我也使用它(通过 Groovy)来抓取网页。
        • 而且值得一提的是,它不支持css选择器而是支持xPath.. -.-
        【解决方案5】:

        也许这不是你想要的,但你可以试试 selenium:http://seleniumhq.org/

        这是一个网络应用测试系统。

        【讨论】:

          猜你喜欢
          • 2013-10-02
          • 1970-01-01
          • 2014-11-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-02-03
          相关资源
          最近更新 更多