关于dnspython和pycharm IDE
来源:互联网 发布:掌门集团 知乎 编辑:程序博客网 时间:2024/06/08 08:37
先介绍一下pycharm。
pycharm作为python的IDE,提供了强力的debug。
你可以在官网下载pycharm的安装包
安装pycharm需要事先安装jdk
pycharm为了调试接下来的问题所准备的
之前我介绍了dnspython模块,由于我使用的腾讯云是centos最小化安装,所以无法安装IDE。所以这次调试是在window下进行的。window如何安装dnspython。
根据简易性我们选择源码安装。
官网在官网下载源码包,解压后。
win + r 快捷键
输入cmd回车
进入解压目录 python setup.py install
安装完毕。
接下来引出问题。
import dns.resolver
domain = raw_input('please input an domain:')
A = dns.resolver.query(domain,"A")
for i in A.response.answer:
for j in i.items:
print j.address
注意代码的缩进markdown下的代码块是不缩进的。
ctrl + shift + F10运行
输入www.google.com基本无错误
但是输入www.baidu.com报错
从错误提示中我们可以看出来CNAME对象没有address这个属性。
根据我们上一篇博客中写的
CNAME 是rdtype参数用来指定RR资源类型。
CNAME记录,别名记录,实现域名间的映射。 query(self, qname, rdtype=1, rdclass=1, tcp=False, source=None, raise_on_no_answer=True, source_port=0)
接下来我们进行调试
ctrl + shift + F9快捷键进入debug
根据报错 是在A.response.answer中没有某个属性所以我们先去A.response.answer看看
发现A.response.answer列表里有2个元素。
一个是CNAME类型的
一个是A类型的
那我们分别看一下CNAME类型和A类型中items的属性
CNAME中
的确没有address的属性
A中
有address的属性。
那修改的方法就好办了
在内层循环中添加一个条件 if j.rdtype == 1:
print j.address
else:
pass
运行结果。
- 关于dnspython和pycharm IDE
- 使用Anaconda2 和 Pycharm搭建Python IDE
- 关于编译器和IDE
- Ubuntu12.10安装Python IDE Pycharm和JDK7.0
- Pycharm和PythonWin——Python IDE杂谈
- **Python IDE PyCharm的基本快捷键和配置简介**
- python ide-PyCharm
- Python IDE pycharm
- python IDE:PyCharm简介
- python的IDE:PyCharm
- pycharm IDE常用快捷键
- python IDE之 PyCharm
- Python IDE:PyCharm
- PyCharm IDE操作篇
- 关于api、jdk、和ide
- 新手关于python2.7.11 与 IDE pycharm的安装与使用
- Python IDE:pycharm 初体验
- pycharm IDE设置内存使用
- 面试准备之--字符串旋转
- java/js的一些总结
- Java 多线程-哲学家进餐问题
- JavaMail(一)SMTP协议和POP3协议
- iOS中TableView在Nav存在下发生下移的问题
- 关于dnspython和pycharm IDE
- 关于c#中双主键表数据如何绑定到DataTable的方法(针对于dataset.xsd的特殊情况)
- Java设计模式——工厂模式,建造者模式
- CentOS + Apache + PHP + Mysql
- 精通递归程序设计
- mybatis 中#与$的区别
- android 发送邮件
- [置顶]【H3 BPM工作流程管理产品小故事】第一篇 配置简单流程
- Android梳理不常用widget篇