当来自 SQL 服务器代理的 运行 代码时出现问题 - azure.storage.blob - 未找到模块 azure

Issue when running code from SQL server agent - azure.storage.blob - module azure not found

我遇到一些连接到 azure 存储容器的 python 代码的问题。

代码:

from azure.storage.blob import BlockBlobService
import logging
import os, sys

block_blob_service = BlockBlobService(account_name = accountName, account_key = accountKey, connection_string=connectionString)

block_blob_service.create_blob_from_path(containerName,blob_name=blobName,file_path=fileNameToUpload)

好的,所以这段代码在使用命令提示符执行时有效。

使用 SQL 代理作业执行时:

line 1, in from azure.storage.blob import BlockBlobService ModuleNotFoundError: No module named 'azure'. Process Exit Code 1. The step failed.

点列表:

azure-common         1.1.27
azure-core           1.19.0
azure-storage-blob   1.5.0
azure-storage-common 1.4.2

使用 python 3.7.4

我用于 运行 SQL 代理作业的凭据映射到我的用户 ID,该用户 ID 在服务器上具有管理员权限。

我用 the quickstart 开始了。

有人可以帮忙吗?

您引用的是旧版本azure.storage.versionv1.5.0,在最新版本v12.x.x中,您需要使用BlobServiceClient代替。

######################################
pip install azure-storage-blob==12.9.0
######################################

blob_service_client = BlobServiceClient(account_url=url, credential=self._account_key)

你提到的link已经指向最新版本