我正在尝试在python中访问远程Windows机器上的用户/密码保护文件。我该怎么做呢?这似乎是一个简单的问题,但我一直在谷歌搜索一段时间,但无济于事。
详细信息:
我有从Windows 8计算机运行的IIS Web服务器。我想要一个调用脚本的按钮,该脚本会进入这台计算机上的一些受密码保护的文件。因此,当按下按钮时,我有以下php,它在脚本文件夹中的ActiveChannelScraper.py上调用python,并将所有shell数据回显到浏览器:
$runCMD = 'C:\Anaconda\python scripts\ActiveChannelScraper.py';
$output= shell_exec($runCMD . "2>&1");
echo( '<pre>' );
echo( $output );
echo( '</pre>' );
所有测试打印语句都在打印,直到行os.listdir(p)
,程序明确停止运行,因为之后我没有得到任何打印语句。这是有道理的,因为它无法列出p中的文件,因为p受密码保护。
我在Powershell中使用服务器在机器上完成了Set-ExecutionPolicy Unrestricted -Scope CurrentUser
。
在我的Python脚本中,我尝试了net use:
os.system("net use /user:" + USER + " " + p + " " + PASS)
但它给了我错误信息
System error 86 has occurred.
The specified network password is not correct.
我用我自己的用户名和密码在自己的计算机上试了一下它给了我The command completed successfully.
我仔细检查了用户名和密码,他们肯定是对的。
答案 0 :(得分:0)
系统错误86:如果您确定密码正确,则表示您键入了没有域名的用户名。它应该是/ user:remotecomputername \ Username或/ user:remoteIPaddress \ Username如果您没有域。 并且在密码之前不要使用'p'字母:
net use \\ 192.168.0.2 mysecretpassword /USER:192.168.0.2\Username