【问题标题】:webpage data extraction automation [closed]网页数据提取自动化[关闭]
【发布时间】:2012-12-13 03:45:07
【问题描述】:

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

【问题讨论】:

  • JavaScript/JQuery 始终是实现这些目的的工具,但您可以尝试使用 Python 中的 BeautifulSoup 或 XML DOM 库来提取数据。 Ruby 和/或 C# 中可能存在类似的库
  • 这已经被真正讨论过一万亿次了……你研究了什么?

标签: c# python ruby web


【解决方案1】:

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

Selenium 文档here.

编辑

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();
}

【讨论】:

  • Selenium 是任何免费软件/开源软件还是什么?
  • @user1897085 是的,它都是开源的。这是他们在谷歌代码上的页面,code.google.com/p/selenium
  • 我有什么好的教程可以让我了解 Ruby 和 Web 自动化吗?表示 Ruby 必须与网页一起使用的所有语法和元素。
  • @user1897085 当然,请参阅编辑。
  • 我可以使用ruby从网页中提取任何类型的数据吗-这里我说的网页是第三方应用程序,我可以在其中查看源代码,就是这样!
猜你喜欢
  • 1970-01-01
  • 2015-03-04
  • 1970-01-01
  • 1970-01-01
  • 2014-01-08
  • 1970-01-01
  • 2017-12-05
  • 2013-01-27
  • 1970-01-01
相关资源
最近更新 更多