2015-02-11 6 views
0

Я работаю с odoo, и я хочу, чтобы установить модуль PayBox: это одно: https://bitbucket.org/anybox/anybox_paybox/ Для этого: этот модуль должен PyCrypto работатьошибка при выполнении PyCrypto

Итак, я установил PyCrypto на сервере Linux (убунту)

  1. git clone https://github.com/dlitz/pycrypto.git
  2. ./configure
  3. python setup.py build
  4. python setup.py install

и я сделал этот тест: питон тест setup.py Результата нет никаких ошибок, но проблема приходит сюда: в этом файле //paybox_signature.py//

# coding: utf-8 
import urllib 
import base64 
from Crypto.PublicKey import RSA 
from Crypto.Signature import PKCS1_v1_5 
from Crypto.Hash import SHA 

class Signature(): 

def verify(self, signature, msg, key): 
    """ check if the signature is correct according to the public key path   given 
     and the message """ 
    msg = self.remove_sign(msg) 
    key = RSA.importKey(key) 
    ha = SHA.SHA1Hash().new(msg) 
    verifier = PKCS1_v1_5.new(key) 
    signature = urllib.unquote(signature) 
    signature = base64.b64decode(signature) 
    return verifier.verify(ha, signature) 

    def remove_sign(self, msg): 
    """ remove signature arg from the given string""" 
    pos = msg.find('&Signature') 
    if pos == -1: 
     return msg 
    return msg[:pos] 

, когда я выполнить эту строку файла:

from Crypto.PublicKey import RSA 

-> это нормально там нет ошибки

когда я это сделать

from Crypto.Signature import PKCS1_v1_5 

-> Traceback (самый последний вызов последнего): файл "", линия 1, в ImportError: Нет модуль с именем Подпись

Я не знаю, почему All модули там, почему python делает эту ошибку! действительно не знаю Пожалуйста, имейте в виду вашу помощь

ответ

1

Может возникнуть проблема с установкой пакета pycrypto.

попробовать с

sudo easy_install pycrypto 

и чем перезагрузить систему.

Вы также можете оформить api of pycrypto

Если вы используете Mac OS, чем видеть больше обсуждения here

+0

Я попытался это и генерировать эту ошибку: Traceback (самый последний вызов последним): Файл "/ USR/местные/бен/easy_install", строка 5, в из pkg_resources импорта load_entry_point Файл «/ USR/lib/python2.7/dist-packages/pkg_resources.py ", строка 2711, в parse_requirements (__ требуется__), Environment() Файл« /usr/lib/python2.7/dist-packages/pkg_resources.py », строка 584, в разрешении raise DistributionNotFound (req) pkg_resources.DistributionNotFound: setuptools> = 0.7 – user3854643

0

Сво старый вопрос, но для людей, которые до сих пор ищут ответ и спотыкаясь на этой странице. Вы можете скачать pyCrypto с pycrypto dist, но я рекомендую «pip install pyCrypto» как простой и лучший.

Смежные вопросы