What I can say i that with pyenv and virtualenv created in pyenv it works. Just tried on a new vm with debian 11
Steps: apt update apt install curl git install pyenv: curl https://pyenv.run | bash setup the build environment to build python version, from pyenv docs <https://github.com/pyenv/pyenv/wiki#suggested-build-environment>: apt install build-essential libssl-dev zlib1g-dev \ libbz2-dev libreadline-dev libsqlite3-dev curl \ libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev Installing python 3.7.16: pyenv install 3.7.16 wait for the build process... adding this in .profile export PYENV_ROOT="$HOME/.pyenv" command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)" restart the shell or logout... create an virtual env based on 3.7.16: pyenv virtualenv 3.7.16 testvenv getting web2py: git clone https://github.com/web2py/web2py.git cd web2py/ git submodule update --init --recursive Activate the venv: pyenv local testvenv pip install requests (testvenv) max@d11:~/web2py$ ./web2py.py -S welcome web2py Web Framework Created by Massimo Di Pierro, Copyright 2007-2023 Version 2.24.1-stable+timestamp.2023.03.22.21.39.14 Database drivers available: sqlite3, imaplib, pymysql WARNING:web2py:import IPython error; use default python shell Python 3.7.16 (default, May 28 2023, 09:25:55) [GCC 10.2.1 20210110] on linux Type "help", "copyright", "credits" or "license" for more information. (InteractiveConsole) >>> import requests >>> Il giorno dom 28 mag 2023 alle ore 01:25 vald...@gmail.com < valde...@gmail.com> ha scritto: > I'm using pipenv to run the virtual environment. > > So I install pyenv first and then python 3.7 with it and set it to the > default. > > Then I install pipenv so that it uses the python 3.7 as its default. > > Then I activate the virtual environment with *pipenv shell* and then run > *python > web2py/web2py.py -a pwd -p 7000*. > > To get the web2py shell, I run *python web2py/web2py.py -S init* > > I pretty much got the same results -- see below > > I actually have. I'm running a virtual environment with Pipenv. > > Noting essentially the same results. > > (t2d) popos@popos2004:~/code/t2d > $ python web2py/web2py.py -S init > web2py Web Framework > Created by Massimo Di Pierro, Copyright 2007-2023 > Version 2.22.5-stable+timestamp.2022.06.04.18.13.51 > Database drivers available: sqlite3, imaplib, pymysql > WARNING:web2py:import IPython error; use default python shell > Python 3.7.12 (default, Feb 11 2023, 17:19:18) > [GCC 9.3.0] on linux > Type "help", "copyright", "credits" or "license" for more information. > (InteractiveConsole) > >>> import sys > >>> print(sys.path) > ['', '/home/popos/code/t2d/web2py/site-packages', > '/home/popos/code/t2d/web2py', > '/home/popos/code/t2d/web2py/gluon/packages/yatl', > '/home/popos/code/t2d/web2py/gluon/packages/dal', > '/home/popos/.pyenv/versions/3.7.12/lib/python37.zip', > '/home/popos/.pyenv/versions/3.7.12/lib/python3.7', > '/home/popos/.pyenv/versions/3.7.12/lib/python3.7/lib-dynload', > '/home/popos/.local/share/virtualenvs/t2d-ueLDNtkj/lib/python3.7/site-packages'] > >>> > now exiting InteractiveConsole... > > The site-packages folder has the requests module files in it. > > Able to see it in plain python, but not in web2py shell or the web2py app. > > > On Saturday, May 27, 2023 at 11:59:18 AM UTC-5 Massimiliano wrote: > > Yes it's a virtualenv also mine. > How do you start web2py and how do you set your virtual env for web2py? > > pyenv local yourenv > or what? > > Another thing. web2py.py has #!/usr/bin/env python shebang so it knows > what python to use. > > Have you tried to launch > ./web2py.py -S > instead of > python web2py.py > > as last test you can try to call web2py with the full path of your > virtualenv: > > <your pyenv path>/.pyenv/versions/<your venv>/bin/python web2py.py -S > <yourapp> > > > > Il giorno sab 27 mag 2023 alle ore 18:12 Tom Clerckx <tcle...@gmail.com> > ha scritto: > > With pyenv itself it goes OK, it's only when using a pyenv-virtualenv that > things fail. > I tried on two different machines. > > Newly created pyenv (3.10.6) > Newly created virtualenv > Newly unzipped web2py directory (2.24.1) > > Same result. > When launching the web2py-shell in the virtualenv, the import fails. > > Have you also tried with a virtualenv? > > Regards, > Tom. > > > > On Saturday, May 27, 2023 at 2:38:28 PM UTC+2 Massimiliano wrote: > > I'm also using pyenv and having the same paths order, ma importing > requests is working with no problem, on macos and on linux. > > Have you already tried to get rid of all pyc files and or to uninstall and > reinstall requests? > > Il giorno sab 27 mag 2023 alle ore 14:20 Tom Clerckx <tcle...@gmail.com> > ha scritto: > > See below. In both tests the requests library is in the last element of > the path. > > TEST1, plain python shell - import OK > > (test) tclerckx@stark:~/temp/test$ python > Python 3.10.6 (main, Jan 14 2023, 23:48:13) [GCC 11.3.0] on linux > Type "help", "copyright", "credits" or "license" for more information. > >>> import requests > >>> requests.__file__ > > '/home/tclerckx/.pyenv/versions/test/lib/python3.10/site-packages/requests/__init__.py' > >>> import sys > >>> sys.path > ['', '/home/tclerckx/.pyenv/versions/3.10.6/lib/python310.zip', > '/home/tclerckx/.pyenv/versions/3.10.6/lib/python3.10', > '/home/tclerckx/.pyenv/versions/3.10.6/lib/python3.10/lib-dynload', > '/home/tclerckx/.pyenv/versions/test/lib/python3.10/site-packages'] > >>> > > TEST2, python web2py shell - import FAILS > > (test) tclerckx@stark:~/temp/test/web2py$ python web2py.py -S welcome -M > web2py Web Framework > Created by Massimo Di Pierro, Copyright 2007-2023 > Version 2.24.1-stable+timestamp.2023.03.23.05.07.17 > Database drivers available: sqlite3, imaplib, pymysql > WARNING:web2py:import IPython error; use default python shell > Python 3.10.6 (main, Jan 14 2023, 23:48:13) [GCC 11.3.0] on linux > Type "help", "copyright", "credits" or "license" for more information. > (InteractiveConsole) > >>> import requests > Traceback (most recent call last): > File "/home/tclerckx/temp/test/web2py/gluon/custom_import.py", line 78, > in custom_importer > result = sys.modules[modules_prefix] > KeyError: 'applications.welcome.modules.requests' > > During handling of the above exception, another exception occurred: > > Traceback (most recent call last): > File "<console>", line 1, in <module> > File "/home/tclerckx/temp/test/web2py/gluon/custom_import.py", line 80, > in custom_importer > raise ImportError("No module named %s" % modules_prefix) > ImportError: No module named applications.welcome.modules.requests > >>> import sys > >>> sys.path > ['', '/home/tclerckx/temp/test/web2py/site-packages', > '/home/tclerckx/temp/test/web2py', > '/home/tclerckx/temp/test/web2py/gluon/packages/yatl', > '/home/tclerckx/temp/test/web2py/gluon/packages/dal', > '/home/tclerckx/.pyenv/versions/3.10.6/lib/python310.zip', > '/home/tclerckx/.pyenv/versions/3.10.6/lib/python3.10', > '/home/tclerckx/.pyenv/versions/3.10.6/lib/python3.10/lib-dynload', > '/home/tclerckx/.pyenv/versions/test/lib/python3.10/site-packages'] > >>> > > On Saturday, May 27, 2023 at 12:11:19 PM UTC+2 Massimiliano wrote: > > Maybe one thing you can do is to launch web2py shell and check paths. > > ./web2py.py -S <your-app-name> > > import sys > print(sys.path) > > > > > Il giorno ven 26 mag 2023 alle ore 16:02 vald...@gmail.com < > vald...@gmail.com> ha scritto: > > <https://stackoverflow.com/posts/76341290/timeline> > > Asked this one on SO here > <https://stackoverflow.com/questions/76341290/unable-to-import-requests-in-web2py-even-though-requests-is-accessible-directl> > as I was just reminded of how much nicer this community tends to be to newb > questions. > > I'm attempting to integrate MSAL which requires the requests module. > > I'm running python 3.7 on Linux and using pipenv to manage the > environment. I'm also using web2py 2.24.1 from source (as in I download the > web2py framework via the source button on the web2py website). > > When I am in pipenv shell and go into the python shell, I can access the > requests, however when I try to access it from web2py (running in same > shell), I get the "module not found" error. > > When I check the site-packages folder the requests packages is present. I > have checked the pythonpath and seen that the path from the virtual > environment is present. > > When attempting to load the web2py python shell, it gives the same error. > > I'm probably missing something, but it sometimes appears as if web2py does > some code compilation and then uses the compiled stuff and ignores code > changes after a certain point. Asking as I have commented out all the code > involving the requests module in an effort to get the web2py shell working, > but still get the error and now the entire app is not working even on the > master branch which was previously working. > > Not sure what to try next. Any ideas are appreciated. > > -- > Resources: > - http://web2py.com > - http://web2py.com/book (Documentation) > - http://github.com/web2py/web2py (Source code) > - https://code.google.com/p/web2py/issues/list (Report Issues) > --- > You received this message because you are subscribed to the Google Groups > "web2py-users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to web2py+un...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/web2py/83b8a4ab-120a-4106-83f2-d37652c23093n%40googlegroups.com > <https://groups.google.com/d/msgid/web2py/83b8a4ab-120a-4106-83f2-d37652c23093n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > > -- > Massimiliano > > -- > Resources: > - http://web2py.com > - http://web2py.com/book (Documentation) > - http://github.com/web2py/web2py (Source code) > - https://code.google.com/p/web2py/issues/list (Report Issues) > --- > You received this message because you are subscribed to the Google Groups > "web2py-users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to web2py+un...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/web2py/9e3df18e-403a-4bd2-b42b-8c9028da601fn%40googlegroups.com > <https://groups.google.com/d/msgid/web2py/9e3df18e-403a-4bd2-b42b-8c9028da601fn%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > > -- > Massimiliano > > -- > Resources: > - http://web2py.com > - http://web2py.com/book (Documentation) > - http://github.com/web2py/web2py (Source code) > - https://code.google.com/p/web2py/issues/list (Report Issues) > --- > You received this message because you are subscribed to the Google Groups > "web2py-users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to web2py+un...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/web2py/7e1b981a-d2fe-4af2-8e42-57acc4ca1e7cn%40googlegroups.com > <https://groups.google.com/d/msgid/web2py/7e1b981a-d2fe-4af2-8e42-57acc4ca1e7cn%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > > -- > Massimiliano > > > -- > Resources: > - http://web2py.com > - http://web2py.com/book (Documentation) > - http://github.com/web2py/web2py (Source code) > - https://code.google.com/p/web2py/issues/list (Report Issues) > --- > You received this message because you are subscribed to the Google Groups > "web2py-users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to web2py+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/web2py/da72c846-1b5a-448f-a51c-32be529a1935n%40googlegroups.com > <https://groups.google.com/d/msgid/web2py/da72c846-1b5a-448f-a51c-32be529a1935n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- Massimiliano -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/web2py/CANPTPxKj6qxgDNAV_Nuc%3DcdVy4NrXPQghZ2MV%3D6KeY7fo0xCQA%40mail.gmail.com.