0

我正在寻找一种从不同页面下载文件并将它们存储在本地计算机的特定文件夹下的方法。我正在使用 Ruby 1.9.3

请参阅以下字段:

文件类型字段

文件提示下载

编辑

这是html内容:

<input type="hidden" name="supplier.orgProfiles(1152444).location.locationPurposes().extendedAttributes(Upload_RFI_Form).value.filename" value="Screenshot.docx">

<a style="display:inline; position:relative;" href="

                                      /aems/file/filegetrevision.do?fileEntityId=8120070&cs=LU31NT9us5P9Pvkb1BrtdwaCrEraskiCJcY6E2ucP5s.xyz">
                                Screenshot.docx
                             </a>

我刚刚尝试过的一种可能性:如果添加 html 内容https://xyz.test.com并构造如下所示的 URL

https://xyz.test.com/aems/file/filegetrevision.do?fileEntityId=8120070&cs=LU31NT9us5P9Pvkb1BrtdwaCrEraskiCJcY6E2ucP5s.xyz

并将该 URL 放在浏览器上,然后点击Enter让我有机会下载文件,如屏幕截图所述。

现在可以通过脚本使用 Ruby 完成吗?

4

1 回答 1

1

由于您没有提供有效的 URL,因此很难为您测试解决方案。

通常,检索 URL 的内容是相同的,无论是页面还是文件。Ruby 的内置OpenURI是快速路径:

require 'open-uri'
file = open('http://example.com').read

保存该文件很容易:

IO.binwrite('/path/to/file_to_save', file)

使用binwrite避免了保存二进制数据时会发生的任何行尾转换。对于文本数据使用:

IO.write('/path/to/file_to_save', file)

IO.binwrite和都IO.write记录在IO 模块中。

于 2013-01-09T21:31:53.527 回答