导入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_installpip安装。

链接地址: http://www.djcxy.com/p/9411.html

上一篇: Importing BitTorrent bencode module

下一篇: How to use threading in Python?