Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 属性错误:';str';对象没有属性';是绝对的';_Python_Python 2.7_Dns_Subdomain_Dnspython - Fatal编程技术网

Python 属性错误:';str';对象没有属性';是绝对的';

Python 属性错误:';str';对象没有属性';是绝对的';,python,python-2.7,dns,subdomain,dnspython,Python,Python 2.7,Dns,Subdomain,Dnspython,我有所有的资源记录集和资源类型(cname、A、ns、mx)。我想使用python中的easyzone,dnspython,dns库创建一个dns文件(绑定格式) 但我有一个错误- 属性错误:“str”对象没有属性“是绝对的” 这是我的基本代码- from dns.zone import Zone from dns.rdataclass import * from dns.rdatatype import * zone1 = Zone(origin='exampl

我有所有的资源记录集和资源
类型(cname、A、ns、mx)
。我想使用python中的
easyzone
dnspython
dns
库创建一个dns文件(绑定格式)

但我有一个错误-

属性错误:“str”对象没有属性“是绝对的”

这是我的基本代码-

    from dns.zone import Zone
    from dns.rdataclass import *
    from dns.rdatatype import *
    zone1 = Zone(origin='example.com.')
    A_add = "example.com."
    print "Adding record of type A:", A_add
    rdataset = zone1.find_rdataset(A_add, rdtype=A, create=True)
    rdata = dns.rdtypes.IN.A.A(IN, A, address="192.168.10.30")
    rdataset.add(rdata, ttl=300)
我在
rdataset=zone1上遇到错误。查找rdataset(A_add,rdtype=A,create=True)


如何使用python中上述任何库创建dns文件以及如何解决此问题?

您使用的是哪个版本的DNSPython?如果一个_add是一个字符串(只需将其转换为dns.name.name),那么它应该可以正常工作。easyzone==1.2.2 dnspython==1.12.0,您可以添加一行代码来将_add转换为dns.name.name,因为即使在这之后问题仍然存在!我这样做了,但现在我得到了AttributeError:'module'对象没有属性'CNAME','AttributeError:'module'对象没有属性'A'行中的rdata=dns.rdtypes.ANY.CNAME.CNAME(in,CNAME,target)和rdata=dns.rdtypes.in.A.A(in,A,address=“192.168.10.30”)错误。尽管如此,我还是正确地导入了它!