我想使用 AirFlow 和 Selenium Grid 服务器每天抓取一个网站。我为此创建了一个 DAG。
该网站为同一 Web 用户界面中的每个数据提供一个端点(例如 website.com/python、website.com/java、website.com/ruby)。
我已通过使用 AirFlow REST API 和 conf 变量成功触发了 DAG。现在我想每天使用相应的conf变量来安排我触发的每次运行。
是否可以实现这一点(也许通过创建一个新的DAG或动态设置一个cronjob)?
您可以通过在
schedule
上设置 DAG
来安排 Airflow DAG,例如:
with DAG(dag_id="hello_world", start_date=datetime(2023, 1, 1), schedule="@daily"):
...
从你的问题来看,我不清楚你的conf是否每次DAG运行都会改变。如果没有,您可以对所有设置进行硬编码,或者通过 DAG 上的
params
进行设置,请参阅示例此处。