No module named 'ethereum' for cert-issuer Python

I’m just getting started with Blockcert-python and trying to run it on my local system.

Here are the steps I did:

  1. Clone the cert-issuer GitHub repo
  2. Create a virtual environment for Python 3.5.4 on Mac OS
  3. Run python setup.py experimental --blockchain=etheruem command
  4. It gives an error, then I edit the site-packages to fix the pysha3 version conflict
  5. Then I configure the conf.ini and put all the necessary information like issuer_address etc.
  6. after that, I run python setup.py install and it goes well
  7. Now when I run cert-issuer -c conf.ini, it gives an error that no module named rpl
  8. Then I install the rpl module and forced its version below 1.
  9. Now, it’s giving another error as ImportError: No module named 'ethereum'

and here’s the complete error statement:

WARNING - Your app is configured to skip the wifi check when the USB is plugged in. Read the documentation to ensure this is what you want, since this is less secure
INFO - This run will try to issue on the ethereum_ropsten chain
Traceback (most recent call last):
File “/Users/abdul/PycharmProjects/cert-issuer/venv/bin/cert-issuer”, line 11, in
load_entry_point(‘cert-issuer==2.0.22’, ‘console_scripts’, ‘cert-issuer’)()
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/main.py”, line 17, in cert_issuer_main
issue_certificates.main(parsed_config)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/issue_certificates.py”, line 31, in main
from cert_issuer.blockchain_handlers import ethereum
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/init.py”, line 9, in
from cert_issuer.blockchain_handlers.ethereum.signer import EthereumSigner
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/signer.py”, line 2, in
from ethereum import transactions
ImportError: No module named ‘ethereum’

I think the problem is that you’re overriding your first installation by running python setup.py install after python setup.py experimental --blockchain=etheruem.

Only run python setup.py experimental --blockchain=etheruem if you intend on using ethereum.

I have to run it for ethereum, so If I run python setup.py experimental --blockchain=etheruem it gives another error as: AssertionError: Invalid blockchain!
My other installation was work on this step but it was giving a different error while issuing(cert-issuer -c conf.ini) the certificate.
Here’s the complete Traceback:

Traceback (most recent call last):
File “/Users/abdul/PycharmProjects/cert-issuer/venv/bin/cert-issuer”, line 11, in
load_entry_point(‘cert-issuer==2.0.22’, ‘console_scripts’, ‘cert-issuer’)()
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/main.py”, line 17, in cert_issuer_main
issue_certificates.main(parsed_config)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/issue_certificates.py”, line 36, in main
return issue(app_config, certificate_batch_handler, transaction_handler)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/issue_certificates.py”, line 22, in issue
tx_id = issuer.issue(app_config.chain)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/issuer.py”, line 27, in issue
txid = self.transaction_handler.issue_transaction(blockchain_bytes)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/transaction_handlers.py”, line 61, in issue_transaction
self.verify_transaction(signed_tx, eth_data_field)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/transaction_handlers.py”, line 92, in verify_transaction
tx_utils.verify_eth_transaction(signed_tx, eth_data_field)
File “/Users/abdul/PycharmProjects/cert-issuer/venv/lib/python3.5/site-packages/cert_issuer-2.0.22-py3.5.egg/cert_issuer/blockchain_handlers/ethereum/tx_utils.py”, line 24, in verify_eth_transaction
for s in signed_hextx.split(‘80a0’):
AttributeError: ‘dict’ object has no attribute 'split’