Unable to import tkSnack from Python3 - python-3.x

I'm trying to import tkSnack from Python3 in Debian 10.
I have already installed tkSnack from apt:
apt-get install python3-tksnack
Anyway, when trying to import tkSnack module frome python3:
ModuleNotFoundError: No module named 'tkSnack'
I have also tried to install tkSnack from pip, but the following error message appears:
ERROR: Command errored out with exit status 1:
command: /home/cooper/anaconda3/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-x8rnbcp1/snack/setup.py'"'"'; __file__='"'"'/tmp/pip-install-x8rnbcp1/snack/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-x8rnbcp1/snack/pip-egg-info
cwd: /tmp/pip-install-x8rnbcp1/snack/
Complete output (6 lines):
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-x8rnbcp1/snack/setup.py", line 47
print GCC_VERSION
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(GCC_VERSION)?
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
It's strange that, when importing tkSnack in python2.7 all works well!
Does anyone have any idea about this? Thaks!

There're 2 separate problems in your question so it'd be better if you've asked 2 different questions.
You installed the package with system package manager apt-get but tried to use with local anaconda environment. That doesn't work: packages installed with system package managers should be used with system-installed python. To install packages into virtual environments (including anaconda) use conda or pip.
SyntaxError in print means the code is for Python2 only; in Python3 print becomes a function and requires parenthesizes: print(GCC_VERSION). It seems you installed a wrong, Python2-only version of the package and is trying to use it with Python3. Uninstall it and reinstall with code update for Python3.

Related

pip3 install fails on mac os

I am trying to install the ssl module using pip3 version 20.2.1 on Mac OS 10.14 which gives me the following error:
Command: pip3 install ssl
ERROR: Command errored out with exit status 1:
command: /Library/Frameworks/Python.framework/Versions/3.8/bin/python3.8 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/nj/5mklr5y50b1d58zr4w_06k1c0000gp/T/pip-install-7az75aro/ssl/setup.py'"'"'; __file__='"'"'/private/var/folders/nj/5mklr5y50b1d58zr4w_06k1c0000gp/T/pip-install-7az75aro/ssl/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/nj/5mklr5y50b1d58zr4w_06k1c0000gp/T/pip-pip-egg-info-9we57qa4
cwd: /private/var/folders/nj/5mklr5y50b1d58zr4w_06k1c0000gp/T/pip-install-7az75aro/ssl/
Complete output (6 lines):
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/nj/5mklr5y50b1d58zr4w_06k1c0000gp/T/pip-install-7az75aro/ssl/setup.py", line 33
print 'looking for', f
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print('looking for', f)?
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
Is this a problem with the ssl module itself?
You don't need to install the SSL package for Python 3. It is a built-in module.
The SSL package on Pypi explains its purpose:
The old socket.ssl() support for TLS over sockets is being superseded
in Python 2.6 by a new ‘ssl’ module. This package brings that module
to older Python releases, 2.3.5 and up (it may also work on older
versions of 2.3, but we haven’t tried it).

How do you install something directly from the GitHub repo?

I am a beginner, and tried to install PyDictionary with pip. It installed, but I had the same issue as this thread - it did not work:
How to get rid of the BeautifulSoup html parser error when I'm not using BeautifulSoup
Someone on here suggested installing if directly from the GitHub repo, but I'm not sure which file to download and what to do next.
UPDATE 1
I've updated pip, and used:
python3 -m pip install PyDictionary
(I needed python3 for some reason). I then used this program:
from PyDictionary import PyDictionary
dictionary = PyDictionary()
print (dictionary.synonym("Life"))
But got:
Warning (from warnings module): File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/PyDictionary/utils.py", line 5 return BeautifulSoup(requests.get(url).text) UserWarning: No parser was explicitly specified, so I'm using the best available HTML parser for this system ("lxml"). This usually isn't a problem, but if you run this code on another system, or in a different virtual environment, it may use a different parser and behave differently.
The code that caused this warning is on line 5 of the file /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/PyDictionary/utils.py.
To get rid of this warning, pass the additional argument 'features="lxml"' to the BeautifulSoup constructor. Life has no Synonyms in the API None –
UPDATE 2
python3 -m pip install git+https://github.com/geekpradd/PyDictionary
returns:
Collecting git+github.com/geekpradd/PyDictionary Cloning github.com/geekpradd/PyDictionary to /private/var/folders/sn/081bt1wd0d3gy2styt2_l1vw0000gn/T/pip-req-build-73cegdxt Running command git clone -q github.com/geekpradd/PyDictionary /private/var/folders/sn/081bt1wd0d3gy2styt2_l1vw0000gn/T/pip-req-build-73cegdxtERROR: Command errored out with exit status 1: command: /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/sn/081bt1wd0d3gy2styt2_l1vw0000gn/T/pip-req-build-73cegdxt/setup.py'"'"'; file__='"'"'/private/var/folders/sn/081bt1wd0d3gy2styt2_l1vw0000gn/T/pip-req-build-73cegdxt/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/sn/081bt1wd0d3gy2styt2_l1vw0000gn/T/pip-req-build-73cegdxt/pip-egg-info cwd: /private/var/folders/sn/081bt1wd0d3gy2styt2_l1vw0000gn/T/pip-req-build-73cegdxt/ Complete output (5 lines): Traceback (most recent call last):
File "", line 1, in File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/tokenize.py", line 392, in open buffer = _builtin_open(filename, 'rb') FileNotFoundError: [Errno 2] No such file or directory: '/private/var/folders/sn/081bt1wd0d3gy2styt2_l1vw0000gn/T/pip-req-build-73cegdxt/setup.py'
---------------------------------------- ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output
You can normally install directly using the github repos with
python3 -m pip install git+https://github.com/geekpradd/PyDictionary
But this repository has no setup.py file that's why it fails.
To me it's more likely a problem with conflicting python versions, so:
python3 -m pip install PyDictionary
Is enough
See VCS, from the pip docs
pip currently supports cloning over git, git+http, git+https, git+ssh, git+git and git+file:
Here are the supported forms:
git://git.example.com/MyProject#egg=MyProject
git+http://git.example.com/MyProject#egg=MyProject
git+https://git.example.com/MyProject#egg=MyProject
git+ssh://git.example.com/MyProject#egg=MyProject
git+git://git.example.com/MyProject#egg=MyProject
git+file:///home/user/projects/MyProject#egg=MyProject

Issues Installing pdftotext on MacOS using Anaconda

I am newer to programming and am having trouble installing pdftotext in Anaconda, using Mac OS Mojave 10.14.6 and Python 3.6.7. I have installed all the dependencies recommended (https://github.com/jalan/pdftotext) but have not been able to successfully install pdftotext.
Errors include:
ERROR: Command errored out with exit status 1:
command: /anaconda3/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/3_/T/pip-install-ak3q4wz7/pdftotext/setup.py'"'"'; __file__='"'"'/private/var/folders/3_/T/pip-install-ak3q4wz7/pdftotext/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/3_/T/pip-install-ak3q4wz7/pdftotext/pip-egg-info
cwd: /private/var/folders/3_//T/pip-install-ak3q4wz7/pdftotext/
Complete output (3 lines):
Traceback (most recent call last):
File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'setuptools'
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
I ended up using pdftotext from poppler instead of the package listed above. This required the installation of poppler using conda-forge in Anaconda.
For Mac:
conda create -n envname python=3.7
conda activate envname
conda config --add channels conda-forge
conda install poppler
ModuleNotFoundError: No module named 'setuptools'
This suggests that you want to install at least one more dependency:
$ conda install setuptools
Or pip install, if you prefer.

how to import gimp in python3 script?

Sorry for a noob question, but I can't seem to find gimp's install command.
$ pip3 install pgimp
throws the below error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-tt98fv7k/pgimp/setup.py'"'"'; __file__='"'"'/tmp/pip-install-tt98fv7k/pgimp/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base pip-egg-info
cwd: /tmp/pip-install-tt98fv7k/pgimp/
Complete output (7 lines):
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-tt98fv7k/pgimp/setup.py", line 42, in <module>
check_python2_installation()
File "/tmp/pip-install-tt98fv7k/pgimp/setup.py", line 38, in check_python2_installation
'At least one of the following packages is missing in the python2 installation: ' + ', '.join(requirements)
__main__.GimpInstallationException: At least one of the following packages is missing in the python2 installation: numpy, typing
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
I do not know if it is possible to add Gimp into python, but if you have installed gimp beta with flatpack (I tried it on Ubuntu and OpenSuse) you can run a interactive bash or python shell in witch you can find gimp:
flatpak run --command=python org.gimp.GIMP//beta
In this way it open a python shell that can import gimp like into a plugin.
If you want to run a script you can use a bash shell inside it you can run for example python -m ensurepip and start to install with pip your dependencies:
flatpak run --command=bash org.gimp.GIMP//beta
I find more information about that on Create Python3 Plugin for GIMP: The basics and on Some ideas and tools to develop Python 3.8 plugins for GIMP 2.99.4

Installing package using Pip install on MacOS 10.15

Using Python3.7.3, MacOS 10.15
Can't install package - feather
tried pip3 install feather
returns error:
ERROR: Command errored out with exit status 1:
command: /usr/local/opt/python/bin/python3.7 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/vl/pzz3tlxx6_d5p38wth_1nnwr0000gn/T/pip-install-3p9h1fgs/feather/setup.py'"'"'; __file__='"'"'/private/var/folders/vl/pzz3tlxx6_d5p38wth_1nnwr0000gn/T/pip-install-3p9h1fgs/feather/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base pip-egg-info
cwd: /private/var/folders/vl/pzz3tlxx6_d5p38wth_1nnwr0000gn/T/pip-install-3p9h1fgs/feather/
Complete output (31 lines):
Downloading http://pypi.python.org/packages/source/d/distribute/distribute-0.6.14.tar.gz
Traceback (most recent call last):
File "/private/var/folders/vl/pzz3tlxx6_d5p38wth_1nnwr0000gn/T/pip-install-3p9h1fgs/feather/distribute_setup.py", line 143, in use_setuptools
raise ImportError
ImportError
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
All I'm trying to do is avoid this error in spyder
ModuleNotFoundError: No module named 'feather'
Can someone help me as to why I'm running into an issue like this
Looks like setuptools is missing.
Try pip3 install setuptools
this is where the error is reported.
# Setuptools 0.7b and later is a suitable (and preferable)
# substitute for any Distribute version.
try:
pkg_resources.require("setuptools>=0.7b")
return
except (pkg_resources.DistributionNotFound,
pkg_resources.VersionConflict):
pass
if not hasattr(pkg_resources, '_distribute'):
if not no_fake:
_fake_setuptools()
raise ImportError
What is the version number of setuptools?

Resources