首页 > 解决方案 > 使用 wget 强制清除缓存

问题描述

我正在尝试在 Windows 10 命令提示符下使用 wget从此 Wikipedia 页面 ( https://en.wikipedia.org/wiki/ISO_8601 ) 中提取当前日期和时间。这是针对我正在开发的个人应用程序,因此我不想尝试找出更复杂的 c++(我只知道,而且几乎没有)将我的本地时间转换为 UTC,然后为我的项目获取序数日期,我只想下载这个页面带有 wget 和子串我需要的信息。页面(刷新时)正好包含我需要的信息。我可以找到另一种方法来做到这一点,但现在我将其视为个人并试图使其成为一种学习体验,因为它似乎应该很简单。

我在下面发布了我的脚本,但是无论我做什么,当我使用 wget 时页面都不会刷新 - 除非我在浏览器中打开链接并清除我的缓存,否则它会保持不变。下面的脚本不应该这样做吗?我试过 --no-cache 和 --no-cookies 但没有成功。一旦我打开 chrome 并转到此链接(https://en.wikipedia.org/w/index.php?title=ISO_8601&action=purge)并单击“purge”,我总是可以立即使用 wget 并且它可以工作。我只需要它是自动的,而无需我手动刷新。

wget --no-check-certificate --no-cache --no-cookies https://en.wikipedia.org/wiki/ISO_8601

标签: windowsbatch-filecommand-linewget

解决方案


这将起作用:

wget --no-check-certificate --no-cache --no-cookies https://en.wikipedia.org/wiki/ISO_8601 --post-data="action=purge"

但是强制维基百科的服务器在他们的服务器上更新页面的缓存版本可能不是解决这个问题的最佳方法。由于您正在使用 C++ 进行编程,因此您可能需要查看: Converting Between Local Times and GMT/UTC in C/C++


推荐阅读