Open Carliels opened 5 years ago
master上的代码只需要修改IpGetter.py。 在python2.7版本中urllib.request对象不存在,可通过urllib2.urlopen(url)替代原有python3的urllib.request.urlopen(url)。 修改:
step1: 导包修改 `import sys import json
if sys.version_info.major == 2:
import urllib2
else:
import urllib.request`
Step2: 添加通用url访问方法 def urlopen(url): if sys.version_info.major == 2: return urllib2.urlopen(url) else: return urllib.request.urlopen(url)
def urlopen(url): if sys.version_info.major == 2: return urllib2.urlopen(url) else: return urllib.request.urlopen(url)
Step3: 替换文件用原有代码:response = urllib.request.urlopen(url) 为 response = urlopen(url)
response = urlopen(url)
另外,在python2.7环境中Utils类下的方法全部需要加上@staticmethod修饰,变成静态方法。
可参考 https://github.com/NewFuture/DDNS
看到你这个Issue之后一直在考虑,不过目前暂时没有计划兼容,2.7在明年官方会终止支持,我觉得意义不大了。不过还是感谢你的意见😄
master上的代码只需要修改IpGetter.py。 在python2.7版本中urllib.request对象不存在,可通过urllib2.urlopen(url)替代原有python3的urllib.request.urlopen(url)。 修改:
step1: 导包修改 `import sys import json
if sys.version_info.major == 2:
python2
else:
python3
Step2: 添加通用url访问方法
def urlopen(url): if sys.version_info.major == 2: return urllib2.urlopen(url) else: return urllib.request.urlopen(url)
Step3: 替换文件用原有代码:response = urllib.request.urlopen(url) 为
response = urlopen(url)