3

将 Mechanize 与 Ruby 一起使用,我使用 FileUtils 或其他方式获取某个文件agent.get('http://example.com/foo.torrent'),如何将此文件保存到我的硬盘驱动器(例如,在运行脚本的目录中)?

附言class => WWW::Mechanize::File

4

2 回答 2

4

好吧,WWW::Mechanize::File有一个save_as实例方法,所以我想这样的事情可能会起作用:

agent.get('http://example.com/foo.torrent').save_as 'a_file_name'
于 2009-12-14T00:06:09.590 回答
0

请注意,Mechanize::File该类不是最适合大文件的。在这些情况下,应该使用Mechanize::Download该类,因为它将小块的内容下载到磁盘。该文件将被下载到脚本运行的位置(尽管您也可以指定不同的路径)。您需要首先设置默认解析器,创建新解析器或修改现有解析器。然后,将其保存到所需的路径:

agent.pluggable_parser.default = Mechanize::Download
agent.get( "http://example.com/foo.torrent}").save("path/to/a_file_name")

查看此处此处了解更多详细信息。此外,Stackoverflow 中也有类似的问题

于 2016-09-07T00:10:56.583 回答