导入BitTorrent bencode模块
我在Mac OS X 10.6上。 Python是2.6.1。 我已经安装了bencode模块
sudo easy_install BitTorrent-bencode
它出现在网站包中
/Library/Python/2.6/site-packages/BitTorrent_bencode-5.0.8-py2.6.egg
但是,如何导入和使用这个模块?
>>> import bencode
不起作用...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named bencode
如何从站点包导入模块? 如何识别模块名称BitTorrent_bencode-5.0.8-py2.6.egg包含?
sys.path ['','/Library/Python/2.6/site-packages/BitTorrent_bencode-5.0.8-py2.6.egg','/Library/Python/2.6/site-packages','/ System / Library /Frameworks/Python.framework/Versions/2.6/lib/python26.zip','/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6','/ System / Library / Frameworks / Python .framework / Versions / 2.6 / lib / python2.6 / plat-darwin','/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac','/ System / Library /Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac/lib-scriptpackages','/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python',' /System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk','/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-旧','/ System / Library / Frameworks / Python.framework / Versions / 2.6 / lib / python2.6 / lib -dynload','/ System / Library / Frameworks / Python.framework / Versions / 2.6 / Extras / lib / python / PyObjC','/System/Library/Frameworks/Python.framewor K /版本/ 2.6 /附加/ LIB /蟒/ WX-2.8-MAC-的unicode']
谢谢
从我所看到的,pypi上的BitTorrent_bencode-5.0.8-py2.4.egg不包含bencode.py。
我会下载源代码并手动将bencode.py和BTL.py复制到您的站点包文件夹中。
BitTorrent_bencode-5.0.8-py2.4.egg被破坏。 如果你使用unzip来查看蛋的内容,你会看到:
$ unzip BitTorrent_bencode-5.0.8-py2.6.egg
Archive: BitTorrent_bencode-5.0.8-py2.6.egg
inflating: EGG-INFO/dependency_links.txt
inflating: EGG-INFO/PKG-INFO
inflating: EGG-INFO/SOURCES.txt
inflating: EGG-INFO/top_level.txt
inflating: EGG-INFO/zip-safe
inflating: test/__init__.py
inflating: test/__init__.pyc
inflating: test/benchmarkbencode.py
inflating: test/benchmarkbencode.pyc
inflating: test/benchmarkdata.py
inflating: test/benchmarkdata.pyc
inflating: test/testbencode.py
inflating: test/testbencode.pyc
请注意,不包括bencode.py和BTL.py。 如果您从pypi下载软件包的源代码发行版,则可以获取缺少的文件。 该软件包的问题在于,setup.py不包括该egg创建的软件包列表中的分发根目录。 要解决这个问题,你可以编辑setup.py并替换下面这行:
packages = find_packages(),
有:
packages = ['','test'],
然后,运行python setup.py install
会正确安装这个软件包。
您也可以使用bzrlib.bencode
包。 这通过easy_install
或pip
安装。