【问题标题】:Create dynamic sitemap from URL with Ruby on Rails使用 Ruby on Rails 从 URL 创建动态站点地图
【发布时间】:2014-02-11 16:31:38
【问题描述】:

我目前正在开发一个应用程序,我从多个不同的站点抓取信息。要在站点上获取所需主题的深层链接,我依赖提供的站点地图(例如“论坛”)。随着我的扩展,我遇到了一些自己不提供站点地图的网站,所以我想知道是否有任何方法可以在 Rails 中从顶级域生成它?

我正在使用 Nokogiri 和 Mechanize 来检索数据,因此如果有任何功能可以帮助解决该任务,它会更容易集成。

【问题讨论】:

  • 这是一个非常广泛的问题。蜘蛛站点很少是一项通用任务,因为站点通常是定制的。通用蜘蛛返回大量需要过滤的垃圾。编写蜘蛛并不难,并且有许多教程和页面描述了这样做的各个方面。有很多页面,包括这里的 Ruby 相关的页面也是如此,所以我建议你搜索更多。

标签: ruby-on-rails ruby web-scraping sitemap web-crawler


【解决方案1】:

这可以通过Spidr gem 来完成,如下所示:

url_map = Hash.new { |hash,key| hash[key] = [] }

Spidr.site('http://intranet.com/') do |spider|
  spider.every_link do |origin,dest|
    url_map[dest] << origin
  end
end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-03
    • 2017-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-03
    • 2019-06-22
    相关资源
    最近更新 更多