emma perkins
emma perkins

Reputation: 769

Running Python pip and easy_install throwing up errors

I'm tying to install a new package I have been recommended using either pip or easy_install and both are throwing up the below error and I can figure out why.

I have cleared the temp folder as thought this was the issue at first.

I have just stuck the pip error up but can add easy_install if needed

c:\Python32\Scripts>easy_install PyMySQL
C:\Python32\lib\site-packages\setuptools-20.2.2-py3.2.egg\pkg_resources\__init__.py:87: UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here.
Searching for PyMySQL
Reading https://pypi.python.org/simple/PyMySQL/
Best match: PyMySQL 0.7.2
Downloading https://pypi.python.org/packages/source/P/PyMySQL/PyMySQL-0.7.2.tar.gz#md5=6d757cda8bfbd312714207f7c0bef5c7
Processing PyMySQL-0.7.2.tar.gz
Writing c:\users\jarratt\appdata\local\temp\easy_install-bf6ut8\PyMySQL-0.7.2\setup.cfg
Running PyMySQL-0.7.2\setup.py -q bdist_egg --dist-dir c:\users\jarratt\appdata\local\temp\easy_install-bf6ut8\PyMySQL-0.7.2\egg-dist-tmp-x5vabv
C:\Python32\lib\site-packages\setuptools-20.2.2-py3.2.egg\pkg_resources\__init__.py:87: UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here.
Traceback (most recent call last):
  File "C:\Python32\lib\site-packages\setuptools-20.2.2-py3.2.egg\setuptools\sandbox.py", line 154, in save_modules
  File "C:\Python32\lib\site-packages\setuptools-20.2.2-py3.2.egg\setuptools\sandbox.py", line 195, in setup_context
  File "C:\Python32\lib\site-packages\setuptools-20.2.2-py3.2.egg\setuptools\sandbox.py", line 243, in run_setup
  File "C:\Python32\lib\site-packages\setuptools-20.2.2-py3.2.egg\setuptools\sandbox.py", line 273, in run
  File "C:\Python32\lib\site-packages\setuptools-20.2.2-py3.2.egg\setuptools\sandbox.py", line 242, in runner
  File "C:\Python32\lib\site-packages\setuptools-20.2.2-py3.2.egg\setuptools\sandbox.py", line 46, in _execfile
  File "c:\users\jarratt\appdata\local\temp\easy_install-bf6ut8\PyMySQL-0.7.2\setup.py", line 4, in <module>
  File "c:\users\jarratt\appdata\local\temp\easy_install-bf6ut8\PyMySQL-0.7.2\pymysql\__init__.py", line 28, in <module>
  File "c:\users\jarratt\appdata\local\temp\easy_install-bf6ut8\PyMySQL-0.7.2\pymysql\converters.py", line 59
    _escape_table[0] = u'\\0'
                            ^
SyntaxError: invalid syntax

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "c:\Python32\Scripts\easy_install-script.py", line 9, in <module>
    load_entry_point('setuptools==20.2.2', 'console_scripts', 'easy_install')()
  File "C:\Python32\lib\site-packages\setuptools-20.2.2-py3.2.egg\setuptools\command\easy_install.py", line 2244, in main

Upvotes: 1

Views: 297

Answers (2)

das-g
das-g

Reputation: 9994

The code of PyMySQL uses Unicode literals.

The py3.2 parts of the directory names in the traceback of your error message tells me you're using Python 3.2. While Python 2 had Unicode literals, Python 3.0 to 3.2 didn't: The syntax was removed with Python 3.0:

You can no longer use u"..." literals for Unicode text.

It was re-introduced with Python 3.3 by PEP 414 for backwards compatibility reasons.

As Boaz stated and Padraic pointed out, PyMySQL requires Python 2.x ≥ 2.6 or 3.x ≥ 3.3, thus why the authors of PyMySQL felt free to use the Unicode literal syntax in their code.

Upvotes: 2

Boaz Galil
Boaz Galil

Reputation: 72

Install Python 3.3 or higher. Check PyMySQL minimum requirements:

https://pypi.python.org/pypi/PyMySQL#id1

Upvotes: 2

Related Questions