gpt4 book ai didi

ruby-on-rails - ruby Mechanize

转载 作者:行者123 更新时间:2023-12-04 16:20:50 27 4
gpt4 key购买 nike

是否可以使用 Controller 的渲染方法来渲染 Mechanize 对象的内容?我试过:

def new
a = Mechanize.new
a.get('http://flickr.com/')

render :html => a.current_page
end

这会引发错误,以及 render :text => a , a.page , 和 a.current_page .

据我所知 render函数并不期待 Mechanize 对象,我只是不知道它想要什么以及如何获得它。

我正处于开发和研究 Ruby 的所有网络抓取框架的开始阶段,任何帮助将不胜感激。

最佳答案

试试 body方法:

page = agent.get('http://www.example.net')
puts page.body[0..100]
=> "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml"

您还可以使用 Nokogiri 的功能深入了解文档。 Mechanize 围绕 Nokogiri ,因此您可以访问 Nokogiri 创建的解析文档,然后使用 CSS 或 XPath 访问器来定位文档的子部分。一旦你找到了你想要的东西,你就可以使用 to_html方法让 Nokogiri 为节点或节点集发出 HTML。有关信息,请参阅“ extract single string from html using ruby/mechanize (and nokogiri)”。

现在,虽然这可行,但您可能需要考虑直接在您的页面上重复使用内容是否违反了服务条款或版权。

关于ruby-on-rails - ruby Mechanize ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12324144/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com