0

I am getting this error when I try to install the english model for spacy ImportError: bad magic number in 'random': b'\x03\xf3\r\n' Any help would be seriously appreciated

This is the traceback error:

Traceback (most recent call last):
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\runpy.py", line 183, in _run_module_as_main
mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\runpy.py", line 142, in _get_module_details
return _get_module_details(pkg_main_name, error)
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\runpy.py", line 109, in _get_module_details
__import__(pkg_name)
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\spacy\__init__.py", line 4, in <module>
from .cli.info import info as cli_info
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\spacy\cli\__init__.py", line 1, in <module>
from .download import download
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\spacy\cli\download.py", line 10, in <module>
from .link import link
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\spacy\cli\link.py", line 8, in <module>
from ..compat import symlink_to, path2str
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\spacy\compat.py", line 9, in <module>
from thinc.neural.util import copy_array
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\thinc\neural\__init__.py", line 1, in <module>
from ._classes.model import Model
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\thinc\neural\_classes\model.py", line 2, in <module>
from numpy import prod
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\__init__.py", line 142, in <module>
from . import add_newdocs
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\add_newdocs.py", line 13, in <module>
from numpy.lib import add_newdoc
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\lib\__init__.py", line 8, in <module>
from .type_check import *
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\lib\type_check.py", line 11, in <module>
import numpy.core.numeric as _nx
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\core\__init__.py", line 74, in <module>
from numpy.testing import _numpy_tester
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\testing\__init__.py", line 12, in <module>
from . import decorators as dec
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\testing\decorators.py", line 6, in <module>
from .nose_tools.decorators import *
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\testing\nose_tools\decorators.py", line 20, in <module>
from .utils import SkipTest, assert_warns
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\site-packages\numpy\testing\nose_tools\utils.py", line 15, in <module>
from tempfile import mkdtemp, mkstemp
File "C:\Users\Saurav\AppData\Local\Programs\Python\Python36-32\lib\tempfile.py", line 45, in <module>
from random import Random as _Random
ImportError: bad magic number in 'random': b'\x03\xf3\r\n'    

This is what I used to install scapy and it's English model:

pip install -U spacy

python -m spacy download en

enter image description here

Saurav Saha
  • 745
  • 1
  • 11
  • 30
  • Please paste your exception traceback as text, not a screenshot. Also, what exactly did you do to "try to install the english model"? – abarnert May 22 '18 at 21:40
  • Meanwhile, do you by any chance have a file named `random.py`, `random.pyc`, `random.pyd`, `random.dll`, etc. in your working directory or site-packages (or any other directory you've added to `sys.path`)? – abarnert May 22 '18 at 21:41
  • I have included the things that you required @abarnert – Saurav Saha May 24 '18 at 07:07
  • I do have a random.py file in my lib folder @abarnert – Saurav Saha May 24 '18 at 07:09
  • 2
    Then that's your problem. Don't name a module the same thing as a stdlib module. If you do so, it hides the stdlib module, and some code you're using will try to `import random` and use `random.choice` and get an `ImportError` or `AttributeError`. Things can get harder to debug when that code is numpy trying to do something fancy like import a C accelerator out of a stdlib module, but the fix is the same—just rename your module to something that doesn't clash. – abarnert May 24 '18 at 17:21
  • Hopefully the linked duplicates’ answers can explain things better than I can in a comment. – abarnert May 24 '18 at 17:45
  • Yes.. I did have a random.pyc file in my working directory and once I deleted it, the problem was solves. Thanks for all the help @abarnet – Saurav Saha May 24 '18 at 19:17

0 Answers0