使用FileUtils将WWW :: Mechanize :: File保存到磁盘
使用Mechanize with Ruby我使用agent.get('http://example.com/foo.torrent')
获取某个文件,使用agent.get('http://example.com/foo.torrent')
或其他方式,如何将此文件保存到我的硬盘驱动器中(例如,在脚本运行的目录)?
PS class => WWW::Mechanize::File
好吧, WWW::Mechanize::File
有一个save_as
实例方法,所以我想这样的东西可能会起作用:
agent.get('http://example.com/foo.torrent').save_as 'a_file_name'
请注意, Mechanize::File
类不适合大文件。 在这些情况下,应该使用Mechanize::Download
类,因为它将内容以小块的forms下载到磁盘。 该文件将下载到运行脚本的位置(尽管您也可以指定其他路径)。 您需要先设置默认解析器,创建一个新解析器或修改现有解析器。 然后,将其保存到所需的路径:
agent.pluggable_parser.default = Mechanize::Download agent.get( "http://example.com/foo.torrent}").save("path/to/a_file_name")
点击此处和此处了解更多详情。 此外,Stackoverflow中也有类似的问题。