How to install web3 on vscode without having all these issues?

Question:

here is the code I’m trying to run (from Patric’s course), please consider that this is my first time into coding and it has been two weeks trying to solve this issue !

from solcx import compile_standard from web3 import Web3 import json

with open("./SimpleStorage.sol", "r") as file:
simple_storage_file = file.read()

Solidity source code compiled_sol = compile_standard(

{
    "language": "Solidity",
    "sources": {"SimpleStorage.sol": {"content": simple_storage_file}},
    "settings": {
        "outputSelection": {
            "*": {
                "*": ["abi", "metadata", "evm.bytecode", "evm.bytecode.sourceMap"]
            }
        }
    },
},
solc_version="0.6.0", )

with open("compiled_code.json", "w") as file:
json.dump(compiled_sol, file)

get bytecode bytecode = compiled_sol["contracts"]["SimpleStorage.sol"]["SimpleStorage"]["evm"][

"bytecode" ]["object"]

get abi abi = compiled_sol["contracts"]["SimpleStorage.sol"]["SimpleStorage"]["abi"]

connecting to ganach w3 = Web3(Web3.HTTPProvider("http://127.0.0.1:7545")) chaind_id = 5777

my_address = "0xa1d2a440E4E75bcA442107162DE8C276D637a0eF" ‘private_key
= os.getenv("0x170ab1d384e1d218ccd8ec332dfa334f8e9980f008043ff04e99a8154322bf06")

cteating the contract in python SimpleStorage = w3.eth.contract(abi=abi, bytecode=bytecode) print(SimpleStorage)

I tried all the solution I found; installed cyphon, installed legacy but nothing changed.
and this is was I see on the terminator:

PS C:Usersraoufdemosweb3_py_simple_storage> pip --version
pip 22.0.4 from C:UsersraoufAppDataLocalProgramsPythonPython310libsite-packagespip (python 3.10)
PS C:Usersraoufdemosweb3_py_simple_storage> python --version
Python 3.10.4
PS C:Usersraoufdemosweb3_py_simple_storage> pip install web3
Collecting web3
  Using cached web3-5.29.1-py3-none-any.whl (500 kB)
Collecting aiohttp<4,>=3.7.4.post0
  Using cached aiohttp-3.8.1-cp310-cp310-win_amd64.whl (555 kB)
Collecting eth-abi<3.0.0,>=2.0.0b6
  Using cached eth_abi-2.1.1-py3-none-any.whl (27 kB)
Collecting jsonschema<5,>=3.2.0
  Using cached jsonschema-4.5.1-py3-none-any.whl (72 kB)
Collecting eth-utils<2.0.0,>=1.9.5
  Using cached eth_utils-1.10.0-py3-none-any.whl (24 kB)
Collecting eth-hash[pycryptodome]<1.0.0,>=0.2.0
  Using cached eth_hash-0.3.2-py3-none-any.whl (8.8 kB)
Collecting eth-account<0.6.0,>=0.5.7
  Using cached eth_account-0.5.7-py3-none-any.whl (101 kB)
Collecting hexbytes<1.0.0,>=0.1.0
  Using cached hexbytes-0.2.2-py3-none-any.whl (6.1 kB)
Collecting eth-typing<3.0.0,>=2.0.0
  Using cached eth_typing-2.3.0-py3-none-any.whl (6.2 kB)
Collecting websockets<10,>=9.1
  Using cached websockets-9.1-cp310-cp310-win_amd64.whl
Requirement already satisfied: pywin32>=223 in c:usersraoufappdatalocalprogramspythonpython310libsite-packages (from web3) (304)
Collecting lru-dict<2.0.0,>=1.1.6
  Using cached lru-dict-1.1.7.tar.gz (10 kB)
  Preparing metadata (setup.py) ... done
Collecting protobuf<4,>=3.10.0
  Using cached protobuf-3.20.1-cp310-cp310-win_amd64.whl (903 kB)
Collecting ipfshttpclient==0.8.0a2
  Using cached ipfshttpclient-0.8.0a2-py3-none-any.whl (82 kB)
Requirement already satisfied: requests<3.0.0,>=2.16.0 in c:usersraoufappdatalocalprogramspythonpython310libsite-packages (from web3) (2.27.1)
Collecting multiaddr>=0.0.7
  Using cached multiaddr-0.0.9-py2.py3-none-any.whl (16 kB)
Collecting aiosignal>=1.1.2
  Using cached aiosignal-1.2.0-py3-none-any.whl (8.2 kB)
Collecting async-timeout<5.0,>=4.0.0a3
  Using cached async_timeout-4.0.2-py3-none-any.whl (5.8 kB)
Collecting yarl<2.0,>=1.0
  Using cached yarl-1.7.2-cp310-cp310-win_amd64.whl (122 kB)
Collecting attrs>=17.3.0
  Using cached attrs-21.4.0-py2.py3-none-any.whl (60 kB)
Requirement already satisfied: charset-normalizer<3.0,>=2.0 in c:usersraoufappdatalocalprogramspythonpython310libsite-packages (from aiohttp<4,>=3.7.4.post0->web3) (2.0.12)
Collecting multidict<7.0,>=4.5
  Using cached multidict-6.0.2-cp310-cp310-win_amd64.whl (27 kB)
Collecting frozenlist>=1.1.1
  Using cached frozenlist-1.3.0-cp310-cp310-win_amd64.whl (33 kB)
Collecting parsimonious<0.9.0,>=0.8.0
  Using cached parsimonious-0.8.1-py3-none-any.whl
Collecting eth-keyfile<0.6.0,>=0.5.0
  Using cached eth_keyfile-0.5.1-py3-none-any.whl (8.3 kB)
Collecting eth-keys<0.4.0,>=0.3.4
  Using cached eth_keys-0.3.4-py3-none-any.whl (21 kB)
Collecting rlp<3,>=1.0.0
  Using cached rlp-2.0.1-py2.py3-none-any.whl (20 kB)
Collecting eth-rlp<2,>=0.1.2
  Using cached eth_rlp-0.3.0-py3-none-any.whl (5.0 kB)
Collecting bitarray<1.3.0,>=1.2.1
  Using cached bitarray-1.2.2.tar.gz (48 kB)
  Preparing metadata (setup.py) ... done
Collecting pycryptodome<4,>=3.6.6
  Using cached pycryptodome-3.14.1-cp35-abi3-win_amd64.whl (1.8 MB)
Collecting cytoolz<1.0.0,>=0.10.1
  Using cached cytoolz-0.11.2.tar.gz (481 kB)
  Preparing metadata (setup.py) ... done
Collecting pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0
  Using cached pyrsistent-0.18.1-cp310-cp310-win_amd64.whl (61 kB)
Requirement already satisfied: certifi>=2017.4.17 in c:usersraoufappdatalocalprogramspythonpython310libsite-packages (from requests<3.0.0,>=2.16.0->web3) (2021.10.8)
Requirement already satisfied: idna<4,>=2.5 in c:usersraoufappdatalocalprogramspythonpython310libsite-packages (from requests<3.0.0,>=2.16.0->web3) (3.3)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:usersraoufappdatalocalprogramspythonpython310libsite-packages (from requests<3.0.0,>=2.16.0->web3) (1.26.9)
Collecting toolz>=0.8.0
  Using cached toolz-0.11.2-py3-none-any.whl (55 kB)
Collecting eth-rlp<2,>=0.1.2
  Using cached eth_rlp-0.2.1-py3-none-any.whl (5.0 kB)
Requirement already satisfied: varint in c:usersraoufappdatalocalprogramspythonpython310libsite-packages (from multiaddr>=0.0.7->ipfshttpclient==0.8.0a2->web3) (1.0.2)
Collecting base58
  Using cached base58-2.1.1-py3-none-any.whl (5.6 kB)
Requirement already satisfied: netaddr in c:usersraoufappdatalocalprogramspythonpython310libsite-packages (from multiaddr>=0.0.7->ipfshttpclient==0.8.0a2->web3) (0.8.0)
Collecting six
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Building wheels for collected packages: lru-dict, bitarray, cytoolz
  Building wheel for lru-dict (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [5 lines of output]
      running bdist_wheel
      running build
      running build_ext
      building 'lru' extension
      error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for lru-dict
  Running setup.py clean for lru-dict
  Building wheel for bitarray (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [13 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating buildlib.win-amd64-cpython-310
      creating buildlib.win-amd64-cpython-310bitarray
      copying bitarraytest_bitarray.py -> buildlib.win-amd64-cpython-310bitarray
      copying bitarraytest_util.py -> buildlib.win-amd64-cpython-310bitarray
      copying bitarrayutil.py -> buildlib.win-amd64-cpython-310bitarray
      copying bitarray__init__.py -> buildlib.win-amd64-cpython-310bitarray
      running build_ext
      building 'bitarray._bitarray' extension
      error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for bitarray
  Running setup.py clean for bitarray
  Building wheel for cytoolz (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [53 lines of output]
      [1/5] Cythonizing cytoolz/utils.pyx
      [2/5] Cythonizing cytoolz/dicttoolz.pyx
      [3/5] Cythonizing cytoolz/functoolz.pyx
      [4/5] Cythonizing cytoolz/itertoolz.pyx
      [5/5] Cythonizing cytoolz/recipes.pyx
      running bdist_wheel
      running build
      running build_py
      creating build
      creating buildlib.win-amd64-cpython-310
      creating buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzcompatibility.py -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolz_signatures.py -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolz_version.py -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolz__init__.py -> buildlib.win-amd64-cpython-310cytoolz
      creating buildlib.win-amd64-cpython-310cytoolzcurried
      copying cytoolzcurriedexceptions.py -> buildlib.win-amd64-cpython-310cytoolzcurried
      copying cytoolzcurriedoperator.py -> buildlib.win-amd64-cpython-310cytoolzcurried        
      copying cytoolzcurried__init__.py -> buildlib.win-amd64-cpython-310cytoolzcurried        
      copying cytoolzdicttoolz.pyx -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzfunctoolz.pyx -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzitertoolz.pyx -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzrecipes.pyx -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzutils.pyx -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzcpython.pxd -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzdicttoolz.pxd -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzfunctoolz.pxd -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzitertoolz.pxd -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzrecipes.pxd -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolzutils.pxd -> buildlib.win-amd64-cpython-310cytoolz
      copying cytoolz__init__.pxd -> buildlib.win-amd64-cpython-310cytoolz
      creating buildlib.win-amd64-cpython-310cytoolztests
      copying cytoolztestsdev_skip_test.py -> buildlib.win-amd64-cpython-310cytoolztests       
      copying cytoolzteststest_compatibility.py -> buildlib.win-amd64-cpython-310cytoolztests  
      copying cytoolzteststest_curried.py -> buildlib.win-amd64-cpython-310cytoolztests        
      copying cytoolzteststest_curried_toolzlike.py -> buildlib.win-amd64-cpython-310cytoolztests
      copying cytoolzteststest_dev_skip_test.py -> buildlib.win-amd64-cpython-310cytoolztests  
      copying cytoolzteststest_dicttoolz.py -> buildlib.win-amd64-cpython-310cytoolztests      
      copying cytoolzteststest_docstrings.py -> buildlib.win-amd64-cpython-310cytoolztests     
      copying cytoolzteststest_doctests.py -> buildlib.win-amd64-cpython-310cytoolztests       
      copying cytoolzteststest_embedded_sigs.py -> buildlib.win-amd64-cpython-310cytoolztests
      copying cytoolzteststest_functoolz.py -> buildlib.win-amd64-cpython-310cytoolztests      
      copying cytoolzteststest_inspect_args.py -> buildlib.win-amd64-cpython-310cytoolztests   
      copying cytoolzteststest_itertoolz.py -> buildlib.win-amd64-cpython-310cytoolztests      
      copying cytoolzteststest_none_safe.py -> buildlib.win-amd64-cpython-310cytoolztests      
      copying cytoolzteststest_recipes.py -> buildlib.win-amd64-cpython-310cytoolztests        
      copying cytoolzteststest_serialization.py -> buildlib.win-amd64-cpython-310cytoolztests  
      copying cytoolzteststest_signatures.py -> buildlib.win-amd64-cpython-310cytoolztests     
      copying cytoolzteststest_tlz.py -> buildlib.win-amd64-cpython-310cytoolztests
      copying cytoolzteststest_utils.py -> buildlib.win-amd64-cpython-310cytoolztests
      running build_ext
      building 'cytoolz.dicttoolz' extension
      error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for cytoolz
  Running setup.py clean for cytoolz
Failed to build lru-dict bitarray cytoolz
Installing collected packages: lru-dict, bitarray, websockets, toolz, six, pyrsistent, pycryptodome, protobuf, multidict, hexbytes, frozenlist, eth-typing, eth-hash, base58, attrs, async-timeout, yarl, parsimonious, multiaddr, jsonschema, cytoolz, aiosignal, ipfshttpclient, eth-utils, aiohttp, rlp, 
eth-keys, eth-abi, eth-rlp, eth-keyfile, eth-account, web3
  Running setup.py install for lru-dict ... error
  error: subprocess-exited-with-error
  
  × Running setup.py install for lru-dict did not run successfully.
  │ exit code: 1
  ╰─> [7 lines of output]
      running install
      C:UsersraoufAppDataLocalProgramsPythonPython310libsite-packagessetuptoolscommandinstall.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
        warnings.warn(
      running build
      running build_ext
      building 'lru' extension
      error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.
Asked By: user15514291

||

Answers:

Accoring to this line:

error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
[end of output]

You need to install Microsoft Visual C++ 14.0

Answered By: MingJie-MSFT

I am also trying to figure it out at metaverseswapping, we are building web3 projects

Answered By: Metaverse Swapping