我相信,应该有很多初次自己搭建自动化脚本的小伙伴,会遇到以下问题:
[Errno 13] Permission denied:XXX路径
我也在网上搜了好多,一直是在考虑权限不够的问题,毕竟它提示的是权限被拒绝。
我开始想的
思路1:是不是我写的log路径有问题,确实不能放到当前目录。所以我一直尝试获取路径的代码:
print '***获取上级目录***'
print os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
print os.path.abspath(os.path.dirname(os.getcwd()))
print os.path.abspath(os.path.join(os.getcwd(), ".."))
print '***获取当前目录***'
print os.getcwd()
print os.path.abspath(os.path.dirname(__file__))
只获得路径的最后一部分
import os
os.path.basename('C:\\Users\\Administrator\\Desktop')
Out[81]: 'Desktop'
os.path.basename('C:\\Users\\Administrator\\Desktop\\a.txt')
Out[82]: 'a.txt
//参考https://www.cnblogs.com/usec/p/8831377.html
打印出来确实是我当前路径,再执行一边,完蛋,还是一样的报错= =。
思路2:
既然提示没有权限,会不会是这个文件就没有,所以写不进去?
所以我改变了代码顺序,先写log的路径,在给log的名字。
log_dir = os.path.abspath(os.path.dirname(os.getcwd()))
log_file_path = log_dir + r'\Log'
log_file_name = datetime.now().strftime("%Y-%m-%d-%H-%M-%S") + ".log"
之前我写的是先给的名字,在给的路径。
log_dir = os.path.abspath(os.path.dirname(os.getcwd()))
log_file_name = datetime.now().strftime("%Y-%m-%d") + ".log"
log_file_path = log_dir + r'\Log' + log_file_name
仔细想想,都没有存放路径,那还能生成对象?。
记录一下,哇 真的是…
python+selenium生成报告和log的代码:
log和报告截图
再说一句,遇到问题在网上不要照搬,还要有自己的思考哟,这样才能进步呐