【问题标题】:using 'puts' to get information from external domain使用“puts”从外部域获取信息
【发布时间】:2012-10-14 23:57:09
【问题描述】:

前几天我刚开始使用 ruby​​ on rails,我在想是否可以使用 puts 函数从外部页面上的页面获取 div 的内容。

类似puts "http://www.example.com #about"

这样的东西会起作用吗?还是您必须获取整个页面然后放置您想要的那个部分?

另外,如果“example.com”#about div 上的内容不断变化,那么会不断更新其输出,还是只会在每次刷新页面时运行脚本?

【问题讨论】:

    标签: ruby-on-rails ruby puts


    【解决方案1】:

    open-uri 库(用于获取页面)和 Nokogiri gem(用于解析和检索特定内容)可以帮助解决此问题。

    require 'open-uri'
    require 'nokogiri'
    
    doc = Nokogiri::HTML(open('http://www.example.com/'))
    
    puts doc.at('#about').text
    

    【讨论】:

      【解决方案2】:

      puts 不会那样工作。不过,Ruby 使解析 HTML 变得相当容易。查看Nokogirl 库,您可以使用xpath 查询来获取要打印的div。我相信如果 div 发生更改,您需要重新打开文件,但我对此并不肯定 - 您可以轻松测试它(或者这里的人可以确认或拒绝该声明)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-06-28
        • 1970-01-01
        • 2014-04-28
        • 1970-01-01
        • 2018-10-21
        • 1970-01-01
        • 2012-10-03
        • 2012-03-31
        相关资源
        最近更新 更多