2016-11-30 8 views
1

私はmacOS Sierraを使用しています。 builtwithをインポートするとき、私は、これらの次のエラーを取得する:Python 3.xのインポートエラーです。SyntaxError

Daniels-MacBook-Pro:~ Daniel$ python 
Python 3.5.2 |Anaconda 4.2.0 (x86_64)| (default, Jul 2 2016, 17:52:12) 
[GCC 4.2.1 Compatible Apple LLVM 4.2 (clang-425.0.28)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import builtwith 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/Users/danielotero/anaconda3/lib/python3.5/site-packages/builtwith/__init__.py", line 43 
    except Exception, e: 
        ^
SyntaxError: invalid syntax 

私はそれを正しくインポートするために何ができますか?

+1

使用しているPythonのバージョンと互換性のあるバージョンのモジュールを使用してください。 – kindall

+1

'例外を除いて、e:'はPython 3では有効な構文ではなくなりました。 – rassar

+1

そのモジュールはPython 3をサポートしていません。あなた自身でそれを置くなら、Python 2インタプリタを使うように設定してください。 Pipなどでインストールした場合は、問題の図書館にバグレポートを提出してください。 –

答えて

2

これは、インストールしたbuiltwithパッケージがPython2ではなくPython3によって開発されたためです。したがって、Python2と同様にprintExceptionが使用されます。また、Python3のurllibライブラリの2つに分かれているurllib2ライブラリも使用しています。
それは仕事を終えるためにPython2(Python2.7)を使用することをお勧めしますまたはあなたが、builtwithのソースコードを変更つまり、print()機能にすべてのprintステートメントを変更、except Exception as eexcept Exception, eを変更し、機能にすべてのurllib2の機能を変更する必要がありますurllib.requestsおよびurllib.errorである。

1

module's issue trackerによると、彼らが後方互換性を維持するためにはPython 3に移植、それにしたいとは思われないので、プロジェクトの所有者は、あなたを

This module was built with Python 2 in mind. Patches are welcome to also support Python 3, however would need to maintain backwards compatibility.

を言うのPython 3と互換性がありません。 Python 2を使用するか、別のライブラリを探すか、自分で移植しようとします。