使用 python 的 azure 函数模块错误
azure functions module errors using python
我是 azure 的新手,所以请原谅我对该平台缺乏了解。我目前正在尝试 运行 并使用 python 部署 azure 函数。这些模块目前在我的 requirements.txt 文件
中找到
azure-functions
graphqlclient
requests
gql
asyncio
aiohttp
我运行下面的命令pip install -r requirements.txt
安装了它们,但是由于某些原因,有些模块找不到。例如 json 模块。 import json 可以与任何其他 python 程序一起正常工作。但是当我尝试将它添加到 requirements.txt 文件和 运行 这个命令 pip install -r requirements.txt
我得到以下错误
ERROR: Could not find a version that satisfies the requirement json (from versions: none)
ERROR: No matching distribution found for json
我尝试添加一个版本,但这并没有解决我的问题。那只是我问题的一半,我决定暂时忽略这个问题并尝试使用 .txt 文件中正常工作的模块。转到我的 __init__.py
文件,它是一个计时器触发器,我有以下导入内容
import datetime
import logging
from graphqlclient import GraphQLClient
import requests
import asyncio
from gql import gql, Client
from gql.transport.aiohttp import AIOHTTPTransport
import azure.functions as func
但是当我尝试 运行 我的函数时,我得到以下错误
Exception: ModuleNotFoundError: No module named 'gql.transport.aiohttp'
有人可以解释这些模块错误吗?当我从任何其他 python 程序 运行 它们时,所有这些模块都工作正常,所以问题似乎来自 azure。
谢谢
I run the following command pip install -r requirements.txt to install them, but for some reason, some modules cannot be found. for example the json module.
Json是python中的标准库,无需安装。
只需将其包含在您的 python 脚本中,如下所示:
import json
Exception: ModuleNotFoundError: No module named 'gql.transport.aiohttp'
根据我的测试结果,使用pip install -r requirements.txt
命令安装的gql
的默认版本是2.0.0
.
如果使用from gql.transport.aiohttp import AIOHTTPTransport
导入AIOHTTPTransport
,则需要安装3.x.x
.
所以这个错误是版本不兼容造成的
解法:
请安装3.x.x
版本的gql
,可以先卸载已安装的gql
,再重新安装新版本的gql
:
pip uninstall gql
pip install gql==3.0.0a5
我做了一些测试,功能可以运行正常。
我是 azure 的新手,所以请原谅我对该平台缺乏了解。我目前正在尝试 运行 并使用 python 部署 azure 函数。这些模块目前在我的 requirements.txt 文件
中找到azure-functions
graphqlclient
requests
gql
asyncio
aiohttp
我运行下面的命令pip install -r requirements.txt
安装了它们,但是由于某些原因,有些模块找不到。例如 json 模块。 import json 可以与任何其他 python 程序一起正常工作。但是当我尝试将它添加到 requirements.txt 文件和 运行 这个命令 pip install -r requirements.txt
我得到以下错误
ERROR: Could not find a version that satisfies the requirement json (from versions: none)
ERROR: No matching distribution found for json
我尝试添加一个版本,但这并没有解决我的问题。那只是我问题的一半,我决定暂时忽略这个问题并尝试使用 .txt 文件中正常工作的模块。转到我的 __init__.py
文件,它是一个计时器触发器,我有以下导入内容
import datetime
import logging
from graphqlclient import GraphQLClient
import requests
import asyncio
from gql import gql, Client
from gql.transport.aiohttp import AIOHTTPTransport
import azure.functions as func
但是当我尝试 运行 我的函数时,我得到以下错误
Exception: ModuleNotFoundError: No module named 'gql.transport.aiohttp'
有人可以解释这些模块错误吗?当我从任何其他 python 程序 运行 它们时,所有这些模块都工作正常,所以问题似乎来自 azure。
谢谢
I run the following command pip install -r requirements.txt to install them, but for some reason, some modules cannot be found. for example the json module.
Json是python中的标准库,无需安装。
只需将其包含在您的 python 脚本中,如下所示:
import json
Exception: ModuleNotFoundError: No module named 'gql.transport.aiohttp'
根据我的测试结果,使用pip install -r requirements.txt
命令安装的gql
的默认版本是2.0.0
.
如果使用from gql.transport.aiohttp import AIOHTTPTransport
导入AIOHTTPTransport
,则需要安装3.x.x
.
所以这个错误是版本不兼容造成的
解法:
请安装3.x.x
版本的gql
,可以先卸载已安装的gql
,再重新安装新版本的gql
:
pip uninstall gql
pip install gql==3.0.0a5
我做了一些测试,功能可以运行正常。