我在Ubuntu VM上运行Python 3.4。我正在为我正在进行的项目使用虚拟环境。我尝试使用pip install和从他们的网页下载tar来安装DNSPython。尝试安装时出现以下错误:
copying build/lib/dns/util.py -> /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/util.py to util.cpython-34.pyc
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/tsig.py to tsig.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/tsig.py", line 96
long_time = time + 0L
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/dnssec.py to dnssec.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/dnssec.py", line 121
raise UnsupportedAlgorithm, 'unsupported algorithm "%s"' % algorithm
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/rdatatype.py to rdatatype.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/rdatatype.py", line 213
text = 'TYPE' + `value`
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/rdataclass.py to rdataclass.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/rdataclass.py", line 103
text = 'CLASS' + `value`
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/entropy.py to entropy.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/entropy.py", line 104
if size > 4294967296L:
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/zone.py to zone.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/zone.py", line 874
except dns.exception.SyntaxError, detail:
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/edns.py to edns.cpython-34.pyc
Sorry: TabError: inconsistent use of tabs and spaces in indentation (edns.py, line 117)
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/name.py to name.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/name.py", line 183
h = 0L
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/query.py to query.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/query.py", line 118
except select.error, e:
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/renderer.py to renderer.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/renderer.py", line 221
ednsflags &= 0xFF00FFFFL
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/message.py to message.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/message.py", line 176
return '<DNS message, ID ' + `self.id` + '>'
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/ttl.py to ttl.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/ttl.py", line 39
total = 0L
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/rdtypes/ANY/LOC.py to LOC.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/rdtypes/ANY/LOC.py", line 22
_pows = (1L, 10L, 100L, 1000L, 10000L, 100000L, 1000000L, 10000000L,
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/node.py to node.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/node.py", line 172
raise ValueError, 'replacement is not an rdataset'
^
SyntaxError: invalid syntax
byte-compiling /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/tokenizer.py to tokenizer.cpython-34.pyc
File "/home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dns/tokenizer.py", line 491
if value < 0 or value > 4294967296L:
^
SyntaxError: invalid syntax
running install_egg_info
Writing /home/anton/JMWebStuff/JMWebStuff/lib/python3.4/site-packages/dnspython3-1.11.1.egg-info
我虽然这可能与python 3与python 2问题有关,但我特意下载了python 3版本。这些似乎是真正的错误,但我还没有看到有其他人报告这类错误。谢谢你的帮助。
答案 0 :(得分:16)
事实上,我确实在某种程度上仍在下载python 2.x版本。对于遇到同一问题的其他人:使用pip install dnspython3,而不是dnspython
答案 1 :(得分:1)
如果要为python3使用安装dns:sudo pip3 (不是pip !!)安装dnspython3。 再见!
答案 2 :(得分:0)
对于最新版本的Ubuntu和其他基于Debian的发行版,你可以使用
sudo apt-get install python3-dnspython