【问题标题】:How to download and save output file?如何下载和保存输出文件?
【发布时间】:2025-12-29 02:30:09
【问题描述】:

我们需要下载一堆excel文件。我们将遍历链接列表,下载并保存链接处的文件,然后最终将这些文件导入我们的数据库。我们需要每天晚上运行它,所以我们需要以某种方式安排它。

我们的 Web 应用程序在 ColdFusion 上运行。

完成此任务的最佳(最快/最有效/最简单)方法是什么?我们应该编写一个 ColdFusion 文件(然后创建一个 cf 计划任务以在夜间运行它)还是可以使用 cURL 或 Wget 运行它?还是某种脚本(Perl/Python)?

编辑:

最多会有 200 个链接左右(有时明显更少)。我们正在使用 SQL Server 2008(尽管这并不真正适用,因为我只是询问将文件下载到文件夹 - 导入将是在 db 中处理的单独步骤)。并且文件是二进制excel文件。

【问题讨论】:

  • (编辑)正如您所写的那样,您的问题有点宽泛。您的具体问题是什么?没有单一的工具或“正确”的答案。可以使用 CF 或 shell 脚本 + o/s 调度工具来完成。听起来您已经知道需要哪些部分:安排作业的部分和协调作业部分的部分(循环和下载单个文件)。另外,请更新您的问题以包括 1)多少个链接 2)您的 dbms 类型和 3)文件类型 - 二进制 Excel 文件或文本文件,即 .csv、.txt?。
  • @Leigh - 我想我要问的是为什么我会选择一个而不是另一个?我会将信息添加到问题中
  • 对于 200 个文件,我不确定是否会有显着差异。特别是如果它只是在非工作时间运行的日常任务。我经常将 CF 用于此类任务,因为它简化了执行不同任务(计划、下载、导入)的过程。当然,我通常使用“批处理”方法,因此它可以更好地扩展。 CF 的便利性可能确实增加了一些开销,而不是在 o/s 级别执行此操作(cron、wget、shell 脚本)。但我不是一个真正的 linux 人,所以我不能给你细节。

标签: curl coldfusion download wget


【解决方案1】:

,根据您拥有的 ColdFusion 服务器,ColdFusion 计划既高效又简单。创建 CFM 文件,遍历链接,将每个 excel 保存在安全目录中,然后使用 ColdFusion 内置的 excel 函数触发另一个函数来读取 excel 文件,请参阅此link。 您可以在 ColdFusion Admin 中轻松设置计划任务,有关如何设置计划任务的更多信息,请参阅此link。 如果流程需要很长时间执行,请考虑延长超时时间或分成多个作业。

【讨论】: