关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。
想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。
7年前关闭。
Improve this question
我正在使用 Mechanize gem 来解析网页
http://www.opentable.com/rest_profile_menu.aspx?rid=116320&scpref=96&tab=1
获取 .menu 类中的内容,但它只获取餐厅的名称
当我输入命令时:
require 'mechanize'
agent = Mechanize.new
agent.get("http://www.opentable.com/rest_profile_menu.aspx?rid=116320&scpref=96&tab=1").link_with(:text =>"Menu").click.search(".menu")
我得到的输出为:
“抱歉,我们目前没有可用于此餐厅的菜单。请稍后再回来查看”;因为我可以在浏览器中看到很多输出。
请帮助我找到获取内容的解决方案。
最佳答案
web page您正在使用 AJAX 请求来加载菜单详细信息。
Nokogiri 和 Mechanize 不支持 AJAX 请求页面。
我在我的项目中遇到了同样的情况。我用过 phantomjs使用 Node.js。
关于ruby - Nokogiri Mechanize 解析问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20840275/