当前位置: 首页 > 知识库问答 >
问题:

为Python 3.8 Azure Function加载azure-cosmos库时遇到问题

傅越
2023-03-14

我遇到了一个挑战,让Python azure-cosmos库正确加载,以便在VS Code中本地测试函数

我得到的具体错误(文件路径缩短)是:异常:导入错误:无法从“azure.cosmos”导入名称“例外”([缩短]/.venv/lib/python3.8/站点包/azure/宇宙/__init__.py)

到目前为止我已经检查/尝试过的事情:

  • 检查需求。txt指定azure宇宙
  • 为VS代码中可用的每个解释器手动进入python,并确保我可以手动导入azure。宇宙
  • 按照这里的指示,尝试使用<code>pip3
  • [更新]已验证我可以成功<code>导入azure.cosmos。cosmos_client作为cosmos-client没有任何错误

有什么想法吗?谢谢!下面是我的代码的相关部分。

import datetime
import logging
import tempfile
import requests
import os
import zipfile
import pandas as pd
import azure.functions as func
from azure.cosmos import exceptions, CosmosClient, PartitionKey

def main(mytimer: func.TimerRequest, calendars: func.Out[func.Document]) -> None:
    logging.info("Timer function has initiated.")

共有2个答案

施誉
2023-03-14

是否需要azure.cosmos取决于函数绑定是否满足您的需求,如果绑定可以做您想要的事情假设您不需要使用< code>azure.cosmos。

关于这个导入错误,我可以重现这个异常,我检查了github解决方案,它必须添加一个--pre标志。

所以我的解决方案是转到task.json下的. vscde,将标志添加到命令中,如下所示。

如果您想了解有关cosmos绑定的更多详细信息,您可以参考此文档:Azure Cosmos DB触发器和绑定

狄峻熙
2023-03-14

这就是你现在面对的:

这是官方文档:

https://github.com/Azure-Samples/azure-cosmos-db-python-getting-started

本文档告诉您如何解决此问题。

所以解决办法是安装预版本。(乔治·陈的解决办法是对的。)

没有安装预版本是根本原因,但请注意,您需要先删除软件包。否则,将不会安装预版本。(只运行安装预不会解决这个问题,你需要先删除所有相关的包。然后安装预包。

 类似资料:
  • 无法使用下面的PowerShell脚本将数据写入Azure Cosmos DB(Mongo API)。我想在Cosmos DB(Mongo API)中看到$output数据。

  • 我正在创建一个TicTacToe游戏。我把所有带有ActionListeners的后端放在按钮上,将按钮添加到面板,设置框架等等。 然而,当我运行程序时,我的JPanel似乎没有添加到JFrame中。我试过使用不同的布局,仔细检查是否确实放置了。为所有内容添加行,之前的所有帖子似乎都指向了我认为已经涵盖的内容。 如果这真的很直接,我提前道歉。 谢谢你的帮助。

  • 当我开始日食时,我收到了一条错误消息。 “Android sdk Content Loader遇到问题。 解析Sdk内容失败” " parseSdkContent失败 java.lang.NullPointerException" 我现在能做什么?我无法让 AVD 管理器启动模拟器。我也无法获得 SDK 管理器...

  • 我正在尝试将数据从Spark(使用Databricks)写入Azure Cosmos DB(Mongo DB)。执行notebook时没有错误,但查询集合时出现以下错误。 我用的是databricks网站azure-cosmosdb-Spark _ 2 . 4 . 0 _ 2 . 11-2 . 1 . 2-Uber . jar的jar,我的版本是6.5(包括Apache Spark 2.4.5,S

  • 我已经在网上看了,但我仍然无法理解如何将图形添加到JPanel 以下是我的panel类的代码: 我的主要方法是: 文本只会出现在屏幕的一小部分(这适用于我试图绘制的任何图形对象)。我做错了什么?

  • 当我尝试使用带有Scrapy的蜘蛛下载图像时,会出现以下错误。 就我所能理解的而言,我好像在某个地方的url中少了一个“h”?但我一辈子也看不出在哪里。如果我不想下载图片,一切都正常。但是一旦我将适当的代码添加到下面的四个文件中,我就无法使任何东西正常工作。谁能帮我弄明白这个错误吗? items.py 设置.py pipelines.py products.py(我的蜘蛛) 如有任何帮助,将不胜感