【问题标题】:How do I retrieve links inside <a href> from a page and show on Rails page?如何从页面中检索 <a href> 内的链接并显示在 Rails 页面上?
【发布时间】:2017-08-30 14:46:41
【问题描述】:

我收到了包含 HTML 和一些 JavaScript 代码的 ASP 和 HTML 文件。我必须编写一个 Rails 应用程序,它将从这些页面中检索链接并在 Rails 视图中显示它们。

我被困住了。 Nokogiri 会帮忙吗?

【问题讨论】:

  • 尝试添加一些代码来理解。
  • 是的,nokogiri 通常在这类任务中很有用
  • 你的问题太宽泛了。您需要考虑 JavaScript 链接吗?是否使用 JavaScript 来动态创建 URL? Nokogiri 非常适合解析 HTML 而不是 JavaScript,所以是的,Nokogiri 会有所帮助,除非您的需求不适合它的功能。而且,由于您确实没有告诉我们任何有用的信息,我们无法给出有用的详细答案。

标签: html ruby-on-rails ruby web-scraping


【解决方案1】:

是的,会的。

# open and read your HTML file as Nokogiri::HTML document
doc = File.open("your_file.html") { |f| Nokogiri::HTML(f) }

# collect all links that have not empty href attribute
links = doc.css('a').map { |link| link['href'] }.reject { |link| link.blank? }

【讨论】:

  • 谢谢瓦西里·尤丁先生。我会试试这个,如果它有效,我会告诉你。
  • @mehtasuraj09 没问题 ;)
  • 不要写File.open("your_file.html") { |f| Nokogiri::HTML(f) }。简单地使用Nokogiri::HTML(File.read("your_file.html")) 可以更清楚地做到这一点。
猜你喜欢
  • 2019-01-14
  • 2015-09-13
  • 1970-01-01
  • 2017-01-29
  • 2022-01-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-09
相关资源
最近更新 更多