AttributeError: объект 'module' не имеет атрибута 'getargspec' при запуске основного файла python проекта flask - PullRequest
0 голосов
/ 01 мая 2019

Когда я пытаюсь запустить файл python моего проекта фляги.Я получаю AttributeError:

У объекта 'module' нет атрибута 'getargspec'

**Scenario 1:** When tried running the python file of my flask project
    -bash-4.2$ python ./main_service.py
    Traceback (most recent call last):
      File "./main_service.py", line 1, in <module>
        from flask import Flask, request, json, Blueprint
      File "/usr/lib64/python2.7/site-packages/flask/__init__.py", line 17, in 
<module>
        from werkzeug.exceptions import abort
      File "/usr/lib/python2.7/site-packages/werkzeug/__init__.py", line 20, in 
<module>
        from werkzeug._compat import iteritems
      File "/usr/lib/python2.7/site-packages/werkzeug/_compat.py", line 10, in <module>
    import builtins
  File "/usr/lib/python2.7/site-packages/builtins/__init__.py", line 8, in <module>
    from future.builtins import *
  File "/usr/lib/python2.7/site-packages/future/builtins/__init__.py", line 10, in <module>
    from future.builtins.iterators import (filter, map, zip)
  File "/usr/lib/python2.7/site-packages/future/builtins/iterators.py", line 38, in <module>
    from future import utils
  File "/usr/lib/python2.7/site-packages/future/utils/__init__.py", line 55, in <module>
    import inspect
  File "/usr/lib64/python2.7/inspect.py", line 39, in <module>
    import tokenize
  File "/usr/lib64/python2.7/tokenize.py", line 30, in <module>
    from token import *
  File "/opt/cDVR/services/token.py", line 2, in <module>
    import requests, json
  File "/usr/lib/python2.7/site-packages/requests/__init__.py", line 95, in <module>
    from urllib3.contrib import pyopenssl
  File "/usr/lib/python2.7/site-packages/urllib3/contrib/pyopenssl.py", line 47, in <module>
    from cryptography import x509
  File "/usr/lib64/python2.7/site-packages/cryptography/x509/__init__.py", line 7, in <module>
    from cryptography.x509.base import (
  File "/usr/lib64/python2.7/site-packages/cryptography/x509/base.py", line 14, in <module>
    from cryptography import utils
  File "/usr/lib64/python2.7/site-packages/cryptography/utils.py", line 70, in <module>
    signature = inspect.getargspec
AttributeError: 'module' object has no attribute 'getargspec'
-bash-4.2$



Scenario2: Output of import flask statement in python console
-bash-4.2$ flask --version
Flask 1.0.2
Python 2.7.5 (default, May 31 2018, 09:41:32)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]
-bash-4.2$

-bash-4.2$ python
Python 2.7.5 (default, May 31 2018, 09:41:32)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import flask
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.7/site-packages/flask/__init__.py", line 17, in <module>
    from werkzeug.exceptions import abort
  File "/usr/lib/python2.7/site-packages/werkzeug/__init__.py", line 20, in <module>
    from werkzeug._compat import iteritems
  File "/usr/lib/python2.7/site-packages/werkzeug/_compat.py", line 10, in <module>
    import builtins
  File "/usr/lib/python2.7/site-packages/builtins/__init__.py", line 8, in <module>
    from future.builtins import *
  File "/usr/lib/python2.7/site-packages/future/builtins/__init__.py", line 10, in <module>
    from future.builtins.iterators import (filter, map, zip)
  File "/usr/lib/python2.7/site-packages/future/builtins/iterators.py", line 38, in <module>
    from future import utils
  File "/usr/lib/python2.7/site-packages/future/utils/__init__.py", line 55, in <module>
    import inspect
  File "/usr/lib64/python2.7/inspect.py", line 39, in <module>
    import tokenize
  File "/usr/lib64/python2.7/tokenize.py", line 30, in <module>
    from token import *
  File "token.py", line 2, in <module>
    import requests, json
  File "/usr/lib/python2.7/site-packages/requests/__init__.py", line 95, in <module>
    from urllib3.contrib import pyopenssl
  File "/usr/lib/python2.7/site-packages/urllib3/contrib/pyopenssl.py", line 47, in <module>
    from cryptography import x509
  File "/usr/lib64/python2.7/site-packages/cryptography/x509/__init__.py", line 7, in <module>
    from cryptography.x509.base import (
  File "/usr/lib64/python2.7/site-packages/cryptography/x509/base.py", line 14, in <module>
    from cryptography import utils
  File "/usr/lib64/python2.7/site-packages/cryptography/utils.py", line 70, in <module>
    signature = inspect.getargspec
AttributeError: 'module' object has no attribute 'getargspec'

Имеет ли эта ошибка какое-либо отношение к фляге?virtualenv?Попробовал удалить и переустановить python.Но не поможет.Ценю комментарии по решению проблемы.Заранее спасибо !!!!!

1 Ответ

0 голосов
/ 01 мая 2019

Как говорит @CristiFati, у вас есть файл с тем же именем, что и то, что Flask использует. вам нужно просмотреть трассировку стека для всего, что находится в вашей кодовой базе, в вашем случае упоминается token.py

Я могу получить похожую ошибку, если я сделаю (в оболочке):

mkdir test
cd test
echo "print('in token.py')" > token.py
python -c 'import flask'

если я удалю этот файл, ошибка исчезнет.

...