如何解决:ImportError:无法在python3脚本中导入名称'HttpNtlmAuth'?

时间:2018-10-20 18:49:27

标签: python-requests python-3.6

我已经使用“ sudo python3 -m pip安装请求”(分别为requests_ntlm)安装了request和request_ntlm模块,并且两次安装均成功。

当我然后尝试执行“从请求导入HttpNtlmAuth”时,出现错误,指出“无法导入名称'HttpNtlmAuth'。我在“导入请求”行上没有得到此错误。

当我执行“ sudo python3 -m pip list”时,我看到两者都已安装并且是最新版本。

我以前没有遇到过此错误,只是“无法导入模块”,所以我不熟悉如何解决此问题。

编辑1:其他信息。当我从命令行以“ sudo”运行此脚本时,它可以工作。因为我使用“ exec”从PHP文件中运行python脚本,所以我特别不想以root用户身份运行它。有没有办法解决此问题,或者可能使用sudo运行exec语句?

1 个答案:

答案 0 :(得分:0)

HttpNtlmAuth类位于requests_ntlm包中,因此您需要具备以下条件:

import requests
from requests_ntlm import HttpNtlmAuth

然后您就可以实例化身份验证

session = requests.Session()
session.auth = HttpNtlmAuth('domain\\username','password')
session.get(url)