Borrar filtros
Borrar filtros

Issues Using python from MATLAB

26 visualizaciones (últimos 30 días)
Stephen Hummel
Stephen Hummel el 13 de En. de 2022
Respondida: Yongjian Feng el 19 de En. de 2022
I am trying to use python from MATLAB to run a simple python script that writes information to a website. My python script works great in python but my other code is in MATLAB so I would like to make my process continuous and call python from MATLAB. I set my pyenv to the python used by anaconda on my computer but this seems to consistently cause MATLAB to crash.
Subsequently, I updated the python on my computer, changed the python environment in MATLAB to the newer version, but am struggling to get things to work on several fronts. (I am new to this MATLAB-python interface so please forgive me).
Ideally, I would like to use the MATLAB function pyrunfile, but I end up getting the error:
pyrunfile("autofill.py")
Error using <string>><module> (line 2)
Python Error: ModuleNotFoundError: No module named 'selenium'
I used pip3 install selenium and installed the module. Anytoughts on what I am doing wrong or ways to improve?
Code for Changing Environment:
pyenv('Version', '/usr/local/bin/python3.9')
ans =
PythonEnvironment with properties:
Version: "3.9"
Executable: "/usr/local/opt/python@3.9/bin/python3.9"
Library: "/usr/local/opt/python@3.9/Frameworks/Python.framework/Versions/3.9/lib/libpython3.9.dylib"
Home: "/usr/local/opt/python@3.9/Frameworks/Python.framework/Versions/3.9"
Status: NotLoaded
ExecutionMode: InProcess
  2 comentarios
Ive J
Ive J el 13 de En. de 2022
Editada: Ive J el 13 de En. de 2022
Can you verify you are using the exact version of python as the one pip3 uses?
If you have different versions, you can try to install the modules specifiying py version:
py -3.9 -m pip3 install <modules>
Can you also verify that pip3 installed the modules on py 3.9?
pip3 -V
Also, from MATLAB what happens if you check
mod = py.importlib.import_module("numpy") % I get no error for numpy
Stephen Hummel
Stephen Hummel el 13 de En. de 2022
I used pip3.9 which shows pip version 20.2.3.
I just confirmed install of numpy and it shows:
Requirement already satisfied: numpy in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (1.22.0)
When I tried:
mod = py.importlib.import_module("numpy") % I get no error for numpy
I got the error:
mod = py.importlib.import_module("numpy")
Error using <frozen importlib>_find_and_load_unlocked (line 984)
Python Error: ModuleNotFoundError: No module named 'numpy'
Error in <frozen importlib>_find_and_load (line 1007)
Error in <frozen importlib>_gcd_import (line 1030)
Error in __init__>import_module (line 127)
This made me realize that the path to the module library were not correct. I corrected it and was able to recognize the numpy library. Thank you.

Iniciar sesión para comentar.

Respuestas (1)

Yongjian Feng
Yongjian Feng el 19 de En. de 2022
python has trouble to find the package selenium. One easy way out is to set the environment variable PYTHONPATH inside matlab to point to the folder you installed this package.
This page is about setting env var inside matlab.

Categorías

Más información sobre Call Python from MATLAB en Help Center y File Exchange.

Productos


Versión

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by