You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Airflow DAG中初始化Apify Client时遇TypeError错误求助

解决Airflow中Apify Client初始化时的httpx参数错误

这个报错的核心原因很明确:Airflow运行环境里的httpx版本太低,follow_redirects是httpx 0.23.0及以上版本才新增的参数,而你的Airflow环境里的httpx版本低于这个要求,导致Apify Client调用httpx.Client时传了不被支持的参数。

手动执行正常是因为你本地脚本用的Python环境里,httpx版本符合Apify Client的要求(>=0.23.0),但Airflow的worker/scheduler用的是另一个环境,依赖版本没跟上。

直接按下面的步骤解决:

  • 先确认Airflow运行环境的httpx版本
    登录到Airflow worker或scheduler所在的服务器,激活对应的虚拟环境后执行:

    pip show httpx
    

    看输出的Version字段,肯定低于0.23.0。

  • 升级Airflow环境的httpx到0.23.x稳定版
    因为Apify Client不支持0.24+,所以直接指定0.23系列的最新版本安装:

    pip install httpx==0.23.3
    

    安装完再用pip show httpx确认版本。

  • 验证环境一致性(可选)
    怕以后再踩环境不一致的坑,可以在DAG里加个小任务打印依赖版本:

    from airflow.decorators import task
    import pkg_resources
    
    @task
    def check_deps():
        target_pkgs = ['httpx', 'apify-client']
        installed = sorted([f"{pkg.key}=={pkg.version}" for pkg in pkg_resources.working_set if pkg.key in target_pkgs])
        print("当前环境依赖:", installed)
    

    运行这个任务,对比你手动执行脚本时的pip list输出,确保两个环境的这两个包版本一致。

内容的提问来源于stack exchange,提问作者tripod

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 07:35:06