【发布时间】:2015-12-21 23:30:17
【问题描述】:
我可能以超出项目预期方式的方式使用pywikibot。我希望多个用户使用相同的user-config.py。不幸的是,这给了我这个错误:
警告:已跳过“...pywikibot/user-config.py”:归他人所有。
我目前的解决方案是在 pywikibot/config2.py 处评论其中的一些代码:
_filestatus = os.stat(_filename)
_filemode = _filestatus[0]
_fileuid = _filestatus[4]
if sys.platform == 'win32' or _fileuid in [os.getuid(), 0]:
if sys.platform == 'win32' or _filemode & 0o02 == 0:
with open(_filename, 'rb') as f:
exec(compile(f.read(), _filename, 'exec'), _uc)
else:
print("WARNING: Skipped '%(fn)s': writeable by others."
% {'fn': _filename})
else:
print("WARNING: Skipped '%(fn)s': owned by someone else."
% {'fn': _filename})
即我只保留这部分:
with open(_filename, 'rb') as f:
exec(compile(f.read(), _filename, 'exec'), _uc)
这真的不是处理这个问题的好方法。所以我很好奇,有没有更好的方法? 更好:如果我(或将来的其他人)升级 Pywikibot,事情不会在这里中断。
(在 Pywikibot 错误跟踪器中创建问题可能是开始着手制定更可持续的解决方案的好方法,但项目过于分散,我真的不知道在哪里做。)
【问题讨论】:
-
这是在 Windows 还是 Linux 上?
-
好问题。它在带有 Cygwin 的 Windows 上。但是 IIRC 我过去在 Linux 上遇到过非常类似的问题。