[英]Python get package metadata from source distribution on pypiserver?
如何从我从本地pypi服务器下拉的tar.gz
文件中读取包元数据?
在我的本地计算机上,我可以使用pkginfo
并运行mypackage = SDist('docs/examples/mypackage-0.1.tar.gz')
这将给我元数据。
但是,我在使用请求从文件流中读取时遇到问题吗?
我努力了
with tempfile.NamedTemporaryFile(mode='w+b', suffix='.tar.gz') as fp:
fp.write(r.content)
fp.seek(0)
gzf = gzip.GzipFile(mode='wb', fileobj=fp)
print(gzf.name)
pgkfoo = SDist(filename=gzf.name)
打印语句输出C:\\Users\\my_user_acct\\AppData\\Local\\Temp\\2\\tmpz2v7vcen.tar.gz
但是,我一直收到PermissionError: [Errno 13] Permission denied: 'C:\\\\Users\\\\my_user_acct\\\\AppData\\\\Local\\\\Temp\\\\2\\\\tmpz2v7vcen.tar.gz'
,我检查了一下,我是能够读取/写入该目录中的文件。
还r.url='http://localhost:8080/packages/model_bar-0.1.tar.gz#md5=e6da10bef8626a4e3dcf358fe4787a8c'
感谢yorodm
我能够使它工作,也不需要使用gzip。
with tempfile.NamedTemporaryFile(mode='w+b', suffix='.tar.gz', delete=False) as f:
f.write(r.content)
f.seek(0)
file_ = f.name
pkg_info = SDist(file_)
os.remove(file_)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.