One problem that I can see with this script is in the line:
s = NaServer(storage, 5, 2)
5, 2 -> represents the major_version, minor_version of the Data ONTAP API version.
So, if the ONTAP API version is 1.17, major_version = 1 and minor_version = 17.
For all the ONTAP API versions released so far, major_version is always 1 (whereas in your script it is 5).
minor_version can be anything equal or lower than the actual API minor_version of target ONTAP system.
i.e. if the ONTAP API version is 1.17, the minor_version used in the NaServer constructor can be 17 or lower.
Thus it is safe to use major_version = 1 and minor_version = 0, when you are not sure of the actual ONTAP API version.
[If you want to use vfiler tunneling on 7-Mode ONTAP system, minimum version would be 1.7 and if want to use vserver tunneling on a Clustered ONTAP system, safe version would be 1.15].
Thus I would request you to run the same script after modifying the NaServer constructor to:
s = NaServer(storage, 1, 0)
One more point, you can use the tool ZEDI (ZExplore Development Interface) [zexplore.exe or zexplore.jar] to test if the connection to the target storage system is working fine. You can also generate Python code automatically for any given API using ZEDI.
Please feel free to get back to us if you need any assistance with this.