How can I solve the below error while importing nltk package

Viewed 591

Screenshot of the error

After installing nltk using pip3 install nltk

I am unable to import nltk in python shell in macOS


  File "<stdin>", line 1, in <module>
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/nltk/__init__.py", line 137, in <module>

    from nltk.text import *
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/nltk/text.py", line 29, in <module>

    from nltk.tokenize import sent_tokenize
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/nltk/tokenize/__init__.py", line 65, in <module>

    from nltk.tokenize.casual import TweetTokenizer, casual_tokenize
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/nltk/tokenize/casual.py", line 49, in <module>

    import regex  # https://github.com/nltk/nltk/issues/2409
  File "/Users/userId/Library/Python/3.9/lib/python/site-packages/regex/__init__.py", line 1, in <module>

    from .regex import *
  File "/Users/userId/Library/Python/3.9/lib/python/site-packages/regex/regex.py", line 419, in <module>

    import regex._regex_core as _regex_core
  File "/Users/userId/Library/Python/3.9/lib/python/site-packages/regex/_regex_core.py", line 21, in <module>

    import regex._regex as _regex
ImportError: dlopen(/Users/userId/Library/Python/3.9/lib/python/site-packages/regex/_regex.cpython-39-darwin.so, 2): no suitable image found.  Did find:
    /Users/userId/Library/Python/3.9/lib/python/site-packages/regex/_regex.cpython-39-darwin.so: code signature in (/Users/userId/Library/Python/3.9/lib/python/site-packages/regex/_regex.cpython-39-darwin.so) not valid for use in process using Library Validation: Trying to load an unsigned library```

1 Answers

Just ran into this, I found that the following fixes it:

xcrun codesign --sign - "[YOUR_PATH_TO_DYLIB_HERE]"

In my case the error was like so:

ImportError: dlopen(/Users/USER/dev/cr-likes/venv/lib/python3.9/site-packages/regex/_regex.cpython-39-darwin.so, 2): no suitable image found.  Did find:
    /Users/USER/dev/cr-likes/venv/lib/python3.9/site-packages/regex/_regex.cpython-39-darwin.so: code signature in (/Users/USER/dev/cr-likes/venv/lib/python3.9/site-packages/regex/_regex.cpython-39-darwin.so) not valid for use in process using Library Validation: Trying to load an unsigned library

By running xcrun on the shared object, in this case /Users/USER/dev/cr-likes/venv/lib/python3.9/site-packages/regex/_regex.cpython-39-darwin.so the error is now gone.

Related