Сохраните WWW::Mechanize::Файл на диск с помощью FileUtils

StackOverflow https://stackoverflow.com/questions/1898257

  •  19-09-2019
  •  | 
  •  

Вопрос

Используя Mechanize с Ruby, я получаю определенный файл, используя agent.get('http://example.com/foo.torrent'), с FileUtils или иным образом, как мне сохранить этот файл на свой жесткий диск (например, в каталог, из которого выполняется скрипт)?

P.S. 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 вместо этого используйте класс, поскольку он загружает содержимое небольшими порциями на диск.Файл будет загружен туда, где запущен скрипт (хотя вы также можете указать другой путь).Сначала вам нужно установить анализатор по умолчанию, создать новый или модифицировать существующий анализатор.Затем сохраните его по нужному пути:

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

Проверить здесь и здесь для получения более подробной информации.Кроме того, есть похожий вопрос здесь в Stackoverflow.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top