google-cloud-platform - 在apache airflow中安装Scrapy会导致INVALID_ARGUMENT

标签 google-cloud-platform scrapy airflow google-cloud-composer

我正在尝试使用以下命令从 PyPi 安装 Scrapy

gcloud composer environments update $(AIRFLOW_ENVIRONMENT_NAME) \
    --update-pypi-packages-from-file requirements.txt \
    --location $(AIRFLOW_LOCATION)

requirements.txt是这样的。

google-api-python-client==1.7.*
google-cloud-datastore==1.7.*
Scrapy==2.0.0

运行gcloud命令后,会导致参数无效,但在本地环境中运行成功。

gcloud composer environments update xxxx \
        --update-pypi-packages-from-file requirements.txt \
        --location asia-northeast1
ERROR: (gcloud.composer.environments.update) INVALID_ARGUMENT: Found 1 problem:
        1) Error validating key Scrapy. PyPi dependency name is not formatted properly. It must be lowercase and follow the format of 'identifier' specified in PEP-508.

有什么办法可以安装吗?

最佳答案

正如前面的答案所述,您现在收到的错误非常清楚,它是由依赖项格式错误引起的。它应该是 scrapy==2.0.0 而不是 requirements.txt 中的 Scrapy==2.0.0

我想补充一点,为了避免修复格式时出现安装错误,您应该在列表中再添加一个依赖项,即 attrs==19.2.0。我能够通过指定以下列表将您的要求安装到我的环境中:

google-api-python-client==1.7.*
google-cloud-datastore==1.7.*
scrapy==2.0.0
attrs==19.2.0 

关于google-cloud-platform - 在apache airflow中安装Scrapy会导致INVALID_ARGUMENT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60701726/

相关文章:

google-app-engine - 连接到 Google Cloud SQL

python - Docker + Google Cloud + chromedriver -> 可执行文件需要位于 PATH 中

scrapy - 如何从scrapysplash的响应中获取cookie

python - 在 Lion 上安装 Scrapy - libxml/xmlversion.h 不可用

python - 将 xcom 数据拉出 Airflow 中任何运算符(operator)之外

apache-spark - GCP Dataproc:使用存储连接器的网络带宽不足

python - 我想在 python 代码中添加 ssl 证书,但我不知道如何在代码中添加它

python - 抓取两个页面时忽略请求

python - SIGKILL 耗时过长的 Airflow 终止任务

google-bigquery - 如何在 Apache Airflow 中查询 Google Big Query 并将结果作为 Pandas Dataframe 返回?