如何在Ruby中解析javascript生成的URL?

如何在Ruby中解析javascript生成的URL?,ruby,parsing,mechanize,Ruby,Parsing,Mechanize,我的第一个问题是,让我们简短一点 我正在解析这个站点:使用ruby mechanize。我得到页面并在表单中发布一些搜索词 例如,我得到: 然后我想分析结果以获得: 1.说明 2.2文件名 3.指向缩略图的url 1和2很容易,但我不能得到3。当我检查图像时,我可以看到缩略图的src,但当我用mechanize得到这个元素时,并没有 我可以为这项工作寻找合适的工具吗?如果你在浏览器中检查一个页面,那么它的DOM很可能是由javascript操纵的,因此与机械化的页面不同。Mechanize不处理

我的第一个问题是,让我们简短一点

我正在解析这个站点:使用ruby mechanize。我得到页面并在表单中发布一些搜索词

例如,我得到:

然后我想分析结果以获得:

1.说明 2.2文件名 3.指向缩略图的url

1和2很容易,但我不能得到3。当我检查图像时,我可以看到缩略图的src,但当我用mechanize得到这个元素时,并没有


我可以为这项工作寻找合适的工具吗?

如果你在浏览器中检查一个页面,那么它的DOM很可能是由javascript操纵的,因此与机械化的页面不同。Mechanize不处理javascript,因此只能获取网站发送给用户的原始初始html。我建议使用像cURL这样的工具来获取原始html(比如Mechanize会看到它),然后在浏览器中检查这个版本,以决定以后使用Mechanize时要选择什么


我试着卷曲你的页面,你是对的,没有与img标签相关联的src。可能是为了避免刮擦!您可以检查附带的javascript,看看是否有任何关系可用于从可以检索的数据中找出源URL。

您可以使用phantomjs保存生成的js页面,然后,您可以使用mechanize分析保存的文件中的内容

是否可以提供更多信息?Phantomjs执行JavaScript代码,并可以将结果保存为html文件。使用mechanize,您可以从已保存的文件中提取javascript内容。