您能否推荐一个可以提取网页数据(支持字段、按钮、链接、标签、网格数据等元素)的平台,用于网页数据提取自动化,如 Ruby、Python、C# 等?
问问题
507 次
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 回答