-2

您能否推荐一个可以提取网页数据(支持字段、按钮、链接、标签、网格数据等元素)的平台,用于网页数据提取自动化,如 Ruby、Python、C# 等?

4

1 回答 1

0

我建议使用selenium平台。它是一个非常高质量的 Web 自动化并支持C#,python,ruby,javascript,java,perl,and php. 最重要的功能之一是它可以很好地处理 javascript。

Selenium 文档在这里

编辑

Ruby 教程 http://anahorny.blogspot.com/2011/08/selenium-webdriver-ruby-tutorial.html

您需要的所有文档或其他教程都位于此处http://code.google.com/p/selenium/wiki/RubyBindings

简单的例子:

红宝石:

@driver.get("https://demo.aravo.com/")
@driver.find_element(:id, "j_username").clear
@driver.find_element(:id, "j_username").send_keys "sample"
@driver.find_element(:name, "j_password").clear
@driver.find_element(:name, "j_password").send_keys "sample"
@driver.find_element(:name, "login").click
@driver.find_element(:id, "gbqfq").clear
@driver.find_element(:id, "gbqfq").send_keys "ruby fiel format"

Python:

driver = self.driver
driver.get("https://demo.aravo.com/")
driver.find_element_by_id("j_username").clear()
driver.find_element_by_id("j_username").send_keys("sample")
driver.find_element_by_name("j_password").clear()
driver.find_element_by_name("j_password").send_keys("sample")
driver.find_element_by_name("login").click()

C#:

public void TheDriverTest()
{
    driver.Navigate().GoToUrl("https://demo.aravo.com/");
    driver.FindElement(By.Id("j_username")).Clear();
    driver.FindElement(By.Id("j_username")).SendKeys("sample");
    driver.FindElement(By.Name("j_password")).Clear();
    driver.FindElement(By.Name("j_password")).SendKeys("sample");
    driver.FindElement(By.Name("login")).Click();
}
于 2012-12-13T03:58:09.000 回答