我有一个 Web 应用程序,它从另一个域的页面中抓取数据。该数据每周在特定时间更新几次,比如周三和周五的下午 2 点。
我有一个 JS 函数,它从该页面中抓取特定数据并将其存储在数据库中。如何安排在特定时间调用此函数?
我有一个 Web 应用程序,它从另一个域的页面中抓取数据。该数据每周在特定时间更新几次,比如周三和周五的下午 2 点。
我有一个 JS 函数,它从该页面中抓取特定数据并将其存储在数据库中。如何安排在特定时间调用此函数?
您使用该setTimeout()
功能。它需要两个参数,一个要调用的函数和从现在开始的毫秒数。
setTimeout(myFunction, 10 * 60 * 60 * 1000);
我会使用crontab -e
(在 OSX 上)设置一个 cron 作业:
* 14 * * 4,6 /usr/local/bin/node /path/to/script.js
node
这将在每周三和周五下午 2 点使用(无论您碰巧安装在哪里)运行脚本。
Nodejs 有一个模块node-cron
,用于setTimeout
在完成当前作业后安排作业的下一次运行。您可以查找它的源代码并将其移植到您的应用程序中。