Jupyter not found after Mac install

I followed mac install instructions, given that I have python already installed. The command line command:
jupyter notebook
still cannot find jupyter post-install. Here is the result of installation steps. How should one set the PATH environment? Apologies, I’m a jupyter noob, obviously, but I figure it should work better than not at all.

VIPBGB1L010156D% pip3 install --upgrade pip
Collecting pip
Downloading https://files.pythonhosted.org/packages/43/84/23ed6a1796480a6f1a2d38f2802901d078266bda38388954d01d3f2e821d/pip-20.1.1-py2.py3-none-any.whl (1.5MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 1.5MB 5.3MB/s
Installing collected packages: pip
Found existing installation: pip 18.1
Uninstalling pip-18.1:
Successfully uninstalled pip-18.1
Successfully installed pip-20.1.1
VIPBGB1L010156D% pip3 install jupyter
Collecting jupyter
Downloading jupyter-1.0.0-py2.py3-none-any.whl (2.7 kB)
Collecting nbconvert
Downloading nbconvert-5.6.1-py2.py3-none-any.whl (455 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 455 kB 999 kB/s
Collecting ipykernel
Downloading ipykernel-5.3.1-py3-none-any.whl (120 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 120 kB 2.4 MB/s
Collecting notebook
Downloading notebook-6.0.3-py3-none-any.whl (9.7 MB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 9.7 MB 14.8 MB/s
Collecting ipywidgets
Downloading ipywidgets-7.5.1-py2.py3-none-any.whl (121 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 121 kB 5.9 MB/s
Collecting jupyter-console
Downloading jupyter_console-6.1.0-py2.py3-none-any.whl (21 kB)
Collecting qtconsole
Downloading qtconsole-4.7.5-py2.py3-none-any.whl (118 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 118 kB 9.8 MB/s
Collecting bleach
Downloading bleach-3.1.5-py2.py3-none-any.whl (151 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 151 kB 6.6 MB/s
Collecting pandocfilters>=1.4.1
Downloading pandocfilters-1.4.2.tar.gz (14 kB)
Collecting mistune<2,>=0.8.1
Downloading mistune-0.8.4-py2.py3-none-any.whl (16 kB)
Collecting nbformat>=4.4
Downloading nbformat-5.0.7-py3-none-any.whl (170 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 170 kB 7.8 MB/s
Collecting pygments
Downloading Pygments-2.6.1-py3-none-any.whl (914 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 914 kB 8.1 MB/s
Collecting entrypoints>=0.2.2
Downloading entrypoints-0.3-py2.py3-none-any.whl (11 kB)
Collecting jinja2>=2.4
Downloading Jinja2-2.11.2-py2.py3-none-any.whl (125 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 125 kB 5.2 MB/s
Collecting jupyter-core
Downloading jupyter_core-4.6.3-py2.py3-none-any.whl (83 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 83 kB 3.0 MB/s
Collecting traitlets>=4.2
Downloading traitlets-4.3.3-py2.py3-none-any.whl (75 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 75 kB 4.9 MB/s
Collecting testpath
Downloading testpath-0.4.4-py2.py3-none-any.whl (163 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 163 kB 5.2 MB/s
Collecting defusedxml
Downloading defusedxml-0.6.0-py2.py3-none-any.whl (23 kB)
Collecting ipython>=5.0.0
Downloading ipython-7.16.1-py3-none-any.whl (785 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 785 kB 3.5 MB/s
Collecting tornado>=4.2
Downloading tornado-6.0.4.tar.gz (496 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 496 kB 8.5 MB/s
Collecting jupyter-client
Downloading jupyter_client-6.1.5-py3-none-any.whl (107 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 107 kB 3.4 MB/s
Collecting appnope; platform_system == β€œDarwin”
Downloading appnope-0.1.0-py2.py3-none-any.whl (4.0 kB)
Collecting pyzmq>=17
Downloading pyzmq-19.0.1-cp37-cp37m-macosx_10_9_x86_64.whl (815 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 815 kB 5.1 MB/s
Collecting Send2Trash
Downloading Send2Trash-1.5.0-py3-none-any.whl (12 kB)
Collecting ipython-genutils
Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl (26 kB)
Collecting terminado>=0.8.1
Downloading terminado-0.8.3-py2.py3-none-any.whl (33 kB)
Collecting prometheus-client
Downloading prometheus_client-0.8.0-py2.py3-none-any.whl (53 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 53 kB 2.2 MB/s
Collecting widgetsnbextension~=3.5.0
Downloading widgetsnbextension-3.5.1-py2.py3-none-any.whl (2.2 MB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 2.2 MB 5.1 MB/s
Collecting prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0
Downloading prompt_toolkit-3.0.5-py3-none-any.whl (351 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 351 kB 3.6 MB/s
Collecting qtpy
Downloading QtPy-1.9.0-py2.py3-none-any.whl (54 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 54 kB 3.6 MB/s
Collecting six>=1.9.0
Downloading six-1.15.0-py2.py3-none-any.whl (10 kB)
Collecting webencodings
Downloading webencodings-0.5.1-py2.py3-none-any.whl (11 kB)
Collecting packaging
Downloading packaging-20.4-py2.py3-none-any.whl (37 kB)
Collecting jsonschema!=2.5.0,>=2.4
Downloading jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 56 kB 2.8 MB/s
Collecting MarkupSafe>=0.23
Downloading MarkupSafe-1.1.1-cp37-cp37m-macosx_10_6_intel.whl (18 kB)
Collecting decorator
Downloading decorator-4.4.2-py2.py3-none-any.whl (9.2 kB)
Collecting pexpect; sys_platform != β€œwin32”
Downloading pexpect-4.8.0-py2.py3-none-any.whl (59 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 59 kB 3.5 MB/s
Collecting backcall
Downloading backcall-0.2.0-py2.py3-none-any.whl (11 kB)
Collecting jedi>=0.10
Downloading jedi-0.17.1-py2.py3-none-any.whl (1.4 MB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 1.4 MB 4.6 MB/s
Requirement already satisfied: setuptools>=18.5 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from ipython>=5.0.0->ipykernel->jupyter) (40.6.2)
Collecting pickleshare
Downloading pickleshare-0.7.5-py2.py3-none-any.whl (6.9 kB)
Collecting python-dateutil>=2.1
Downloading python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 227 kB 3.3 MB/s
Collecting ptyprocess; os_name != β€œnt”
Downloading ptyprocess-0.6.0-py2.py3-none-any.whl (39 kB)
Collecting wcwidth
Downloading wcwidth-0.2.5-py2.py3-none-any.whl (30 kB)
Collecting pyparsing>=2.0.2
Downloading pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 67 kB 4.6 MB/s
Collecting pyrsistent>=0.14.0
Downloading pyrsistent-0.16.0.tar.gz (108 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 108 kB 4.9 MB/s
Collecting attrs>=17.4.0
Downloading attrs-19.3.0-py2.py3-none-any.whl (39 kB)
Collecting importlib-metadata; python_version < β€œ3.8”
Downloading importlib_metadata-1.7.0-py2.py3-none-any.whl (31 kB)
Collecting parso<0.8.0,>=0.7.0
Downloading parso-0.7.0-py2.py3-none-any.whl (100 kB)
|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 100 kB 6.3 MB/s
Collecting zipp>=0.5
Downloading zipp-3.1.0-py3-none-any.whl (4.9 kB)
Using legacy setup.py install for pandocfilters, since package β€˜wheel’ is not installed.
Using legacy setup.py install for tornado, since package β€˜wheel’ is not installed.
Using legacy setup.py install for pyrsistent, since package β€˜wheel’ is not installed.
Installing collected packages: six, webencodings, pyparsing, packaging, bleach, pandocfilters, mistune, decorator, ipython-genutils, traitlets, pyrsistent, attrs, zipp, importlib-metadata, jsonschema, jupyter-core, nbformat, pygments, entrypoints, MarkupSafe, jinja2, testpath, defusedxml, nbconvert, ptyprocess, pexpect, backcall, parso, jedi, wcwidth, prompt-toolkit, appnope, pickleshare, ipython, tornado, pyzmq, python-dateutil, jupyter-client, ipykernel, Send2Trash, terminado, prometheus-client, notebook, widgetsnbextension, ipywidgets, jupyter-console, qtpy, qtconsole, jupyter
Running setup.py install for pandocfilters … done
Running setup.py install for pyrsistent … done
Running setup.py install for tornado … done
Successfully installed MarkupSafe-1.1.1 Send2Trash-1.5.0 appnope-0.1.0 attrs-19.3.0 backcall-0.2.0 bleach-3.1.5 decorator-4.4.2 defusedxml-0.6.0 entrypoints-0.3 importlib-metadata-1.7.0 ipykernel-5.3.1 ipython-7.16.1 ipython-genutils-0.2.0 ipywidgets-7.5.1 jedi-0.17.1 jinja2-2.11.2 jsonschema-3.2.0 jupyter-1.0.0 jupyter-client-6.1.5 jupyter-console-6.1.0 jupyter-core-4.6.3 mistune-0.8.4 nbconvert-5.6.1 nbformat-5.0.7 notebook-6.0.3 packaging-20.4 pandocfilters-1.4.2 parso-0.7.0 pexpect-4.8.0 pickleshare-0.7.5 prometheus-client-0.8.0 prompt-toolkit-3.0.5 ptyprocess-0.6.0 pygments-2.6.1 pyparsing-2.4.7 pyrsistent-0.16.0 python-dateutil-2.8.1 pyzmq-19.0.1 qtconsole-4.7.5 qtpy-1.9.0 six-1.15.0 terminado-0.8.3 testpath-0.4.4 tornado-6.0.4 traitlets-4.3.3 wcwidth-0.2.5 webencodings-0.5.1 widgetsnbextension-3.5.1 zipp-3.1.0
VIPBGB1L010156D% jupyter notebook
jupyter: Command not found.
VIPBGB1L010156D% rehash
VIPBGB1L010156D% jupyter notebook
jupyter: Command not found.
VIPBGB1L010156D% tcsh
VIPBGB1L010156D% jupyter notebook
jupyter: Command not found.
VIPBGB1L010156D% echo $PATH
/Library/TeX/Distributions/.DefaultTeX/Contents/Programs/x86_64:/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/Applications/Absoft10/bin:/Applications/Absoft10/bin:/usr/ucb:/usr/bin:/usr/bin/X11:/usr/hosts:/usr/etc:/usr/x11r6/bin:/Users/neale/bin:/opt/local/bin:/usr/local/X11/bin:/usr/local/bin:/usr/local/share/bin:/usr/local/etc:/bin:/etc:/opt/pathscale/bin:.:/usr/local/teTeX/bin/i386-apple-darwin8.3.1:/Applications/Mathematica.app/Contents/MacOS:/usr/sbin:/sbin

This thread looks to address something similar. Seems some people there and in links solved similar issue by upgrading or downgrading pip and setuptools.

You’d probably also want to mention what version of Mac OS you are trying this on? Did you install X code recently?

Also since you mention you are a Jupyter noob, I’ll suggest that maybe you don’t yet need it on your own local system? If you are doing stuff where you don’t need to worry about security/privacy concerns, you can use Jupyter in your browser via MyBinder.org, e.g., go here and click launch binder. See here if you prefer the JupyterLab interface from start up. (There are ways to get to it from the first link, too.) There are other options for using Jupyter in you browser that are currently free with limitations such as Azure notebooks, Google Colab, etc… If you are a scientist in US (and some other places), you can use Jupyter via CyVerse. A lot of these alternatives make it easier for you to switch computers and/or work reproducibly an/or share your work, and so they are more helpful in the long run.

1 Like

Thank you for your help! I am using MacOS Mojave 10.14.6. Yes, xcode-install was run recently.

In the end I could get the local server started using this link. Basically hacking around to get the $PATH correct. Unfortunately, I still could not get the script to do anything except give a syntax error. The script I was using is this one described by Publish or Perish. Every second character is a syntax error, even the // that demarcate comments. So there’s some serious snafu.

Maybe you linked to the wrong place? I don’t see a script when I follow that link.

Oops, my bad, wrong link. This is the one I meant https://harzing.com/resources/publish-or-perish/tutorial

Since it apparently(?) is not open source, it is hard to help you further. One issue is that it seems to refer to 2016 and so it may be in Python 2 and most stuff now is Python 3? Or when you get dependencies, you get new ones that don’t match with old code without some tweaks.

Looking at here it seems it may take a lot to get it going?

It looks like from searching β€˜google scholar python’ that a newer way is to use the scholarly module

1 Like

I really appreciate your efforts to help! In the end, I asked a Linux guru to help and he did.

The scholarly module also hit snags. While installing it went fine, attempts to use it failed. It feels like God doesn’t want me to apply to NSF for funding… luckily I had a human workaround.

Python 3.7.2 (v3.7.2:9a3ffc0492, Dec 24 2018, 02:44:43) 

[Clang 6.0 (clang-600.0.57)] on darwin
Type β€œhelp”, β€œcopyright”, β€œcredits” or β€œlicense” for more information.

from scholarly import scholarly

print(next(scholarly.search_author(β€˜Steven A. Cholewiak’)))
Traceback (most recent call last):
File β€œβ€, line 1, in
File β€œ/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/scholarly/_navigator.py”, line 303, in search_authors
soup = self._get_soup(url)
File β€œ/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/scholarly/_navigator.py”, line 292, in _get_soup
html = self._get_page(_HOST.format(url))
File β€œ/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/scholarly/_navigator.py”, line 129, in _get_page
raise Exception(β€œCannot fetch the page from Google Scholar.”)
Exception: Cannot fetch the page from Google Scholar.

I was a bit worried about that. Something I came across while researching this said that Google had seemed to have made access harder to come by programmatically. So maybe it is that?

I did stumble upon this scraping playground & modified it to your search. It seems to use google-search-results if you choose to extract the code and select Python. And that package looks to be up to date, but seems to drive you towards registering to get an API key. I don’t know how far you can get from the playground I linked.

You can try this Google Scholar API for scraping Scholar Results.