【发布时间】:2012-02-22 20:33:16
【问题描述】:
鉴于 Firefox 现在的工作方式,指定 另存为 文件名有点不可行,无论 watir-webdriver 遇到什么样的链接、重定向或 mime 类型 - 交互式/非 GUI 方式.
找出刚刚保存的文件名的简单方法是什么?
希望比“检测目录中创建的最新文件”更可靠,因为我有独立的进程必须同时使用同一个文件夹,包括其他网络驱动程序。
使用此方法在配置文件中快速下载已设置(尽可能使用许多可预见的文件类型):Firefox 4 with watir webdriver: Need help using helperApps.neverAsk to save CSV without prompting
在我的设置中,一个 Bash 脚本调用 Ruby,它执行 watir-webdriver 的工作,启动浏览器等,然后退出回 Bash 进程。我更喜欢 Ruby 立即知道它刚刚保存的文件名,因为它的 env 最清楚我想如何重命名文件,而不是将它留给一些怪异的lsof/strace 来弄清楚事后的情况。但不管怎样都行。
更新
由于答案似乎不是真的,任何人都可以建议简短的 Ruby 代码来查找给定目录保存的最新文件,检查它是否确实是在最后 2 秒内写入的,并将其重命名为我的变量 $acctno。 csv ?
【问题讨论】:
-
我认为您目录中的最新文件是目前唯一的方法。您只需确保为每个网络驱动程序创建一个新的下载目录(使用 GUID 或类似名称),以确保您没有使用相同的文件夹并获取错误的文件。
-
好的。修改 Ruby 解决方法的问题。
标签: ruby firefox download watir-webdriver