蟒蛇不提取zip文件
#!/usr/bin/python
import requests, zipfile, StringIO, sys
extractDir = "myfolder"
zip_file_url = "download url"
response = requests.get(zip_file_url)
zipDocument = zipfile.ZipFile(StringIO.StringIO(response.content))
zipinfos = zipDocument.infolist()
for zipinfo in zipinfos:
extrat = zipDocument.extract(zipinfo,path=extractDir)
系统配置蟒蛇不提取zip文件
- Ubuntu的OS 16.04
- 的Python 2.7.12
$ python extract.py
当我运行与终端代码上面的命令,它可以正常工作并创建文件夹并将文件解压缩到该文件夹中。
同样,当我使用sodu权限创建cron作业时,代码将执行但不会创建任何文件夹或提取文件。
crontab命令: -
40 10 * * * /usr/bin/sudo /usr/bin/python /home/ubuntu/demo/directory.py > /home/ubuntu/demo/logmyshit.log 2>&1
也试过
40 10 * * * /usr/bin/python /home/ubuntu/demo/directory.py > /home/ubuntu/demo/logmyshit.log 2>&1
注:
- 我检查系统日志,它说,cron是成功运行
- 上面的代码没有错误
- 也使python程序可执行的chmod + x filename.py
请帮我在哪里出错。
Oups里面,没有什么真的错了运行在crontab中一个Python脚本,但很多不好的事情都可能发生,因为环境是不是你来的人。
当您键入交互式shell python directory.py
时,PATH和所有必需的PYTHON环境变量已被设置为登录和交互式shell初始化的一部分,当前目录默认为您的主目录或您当前所在的任何位置。
当从crontab运行相同的命令时,当前目录未指定(但可能不是您所期望的),PATH仅为/bin:/usr/bin
并且未设置python环境变量。这意味着你必须调整crontab文件中的环境变量,直到你获得了正确的Python环境,并设置当前目录。
你的建议**设置当前directroy **为我工作 我刚刚添加'os.chdir(路径)'在我的目录被创建并解决了我的问题。 谢谢大家。 –
@JayeshPatil:如果您在这里不再需要帮助,您应该将其中一个答案标记为* accepted *。 –
cron作业是否正确地写入到你的'logmyshit.log'文件中? – lxop
你为什么试图用'sudo'运行这个?你确定你写的日志文件没有错误吗? – tripleee
你的'logmyshit.log'文件的内容和日期是什么? – user803422