【问题标题】:Easiest way to fetch all href contents on page in Ruby?在Ruby中获取页面上所有href内容的最简单方法?
【发布时间】:2010-12-12 11:21:03
【问题描述】:

我正在用 Ruby 编写一个简单的网络爬虫,我需要获取页面上的所有 href 内容。执行此操作或任何其他网页源解析的最佳方法是什么,因为某些页面可能无效,但我仍然希望能够解析它们。

是否有任何优秀的 Ruby HTML 解析器允许 validity agnostic 解析,或者最好的方法是使用正则表达式手动完成?

是否可以在非 XHTML 页面上使用 XPath?

【问题讨论】:

    标签: html ruby regex parsing html-parsing


    【解决方案1】:

    看看Nokogiri。简短的例子:

    require 'open-uri'
    require 'nokogiri'
    doc = Nokogiri::HTML(open('http://www.google.com/search?q=tenderlove'))
    doc.search('//*[@href]').each do |m| p m[:href] end
    

    【讨论】:

      【解决方案2】:

      看看Mechanize。我很确定它有抓取页面中所有链接的方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-03-04
        • 2019-03-29
        • 2012-06-15
        • 1970-01-01
        • 2016-05-14
        • 1970-01-01
        • 2023-03-13
        相关资源
        最近更新 更多