I have controller in web2py as below # coding: utf8 # try something like #!/usr/local/python2.7 def index(): import pexpect import sys import time import cgi, cgitb import getpass import urllib3 import elementtree.ElementTree as ET ssh_cmd = 'ssh -t' username = 'admin' ip_addr = '192.***.***.***' login = 'logging root' password = 'password' command = ssh_cmd+" "+username+"@"+ip_addr+" "+login try: child = pexpect.spawn(command) child.expect('(?i)password') child.sendline('admin') child.expect('(?i)Password:') child.sendline('abghtnnppst') child.expect('-bash# ') child.sendline('cd /root/siby') child.expect('-bash# ') child.sendline('perl analyzer_main.pl -s -i all') child.expect('-bash# ') except Exception, e: print e print child.before lines = child.before results = ET.Element("results")
for line in lines.split("\n"): if 'MAC' in line: station = ET.SubElement(results,"machine") stnmac = ET.SubElement(machine,"mac") stnip = ET.SubElement(machine,"ip") apidname = ET.SubElement(machine,"name") totalxput = ET.SubElement(machine,"input") retry = ET.SubElement(machine, "retry") if 'MAC' in line: mac = line.split(":", 1) mac.text = str(mac[1].strip()) if 'IP' in line: ip = line.split(":") ip.text = str(ip[1].strip()) if 'NAME' in line: name = line.split(":") name.text = str(name[1].strip()) if 'input' in line: input = line.split(":") input.text = str(input[1].strip()) if 'Retry' in line: ret = line.split(":") retry.text = str(ret[1].strip()) tree = ET.ElementTree(results) tree.write('station.xml') sys.stdout.flush() if child.isalive(): child.sendline('exit') # Try to ask ftp child to exit. child.close() if child.isalive(): print('Child did not exit gracefully.') else: print('Child exited gracefully.') xmlstr = ET.tostring(tree,encoding=None) return dict(xmlstr) In View I have the following code {{extend 'layout.html'}} <h1>This is the remotectrl/index.html template</h1> <body> {{=XML(xmlstr)}} </body> {{=BEAUTIFY(response._vars)}} I want to print the XML data in webpage index.html But it is giving me exception 8. 9. 10. 11. 12. 13. 14. Traceback (most recent call last): File "/root/python2.7/Python-2.7.6/web2py/gluon/restricted.py", line 220, in restricted exec ccode in environment File "/root/python2.7/Python-2.7.6/web2py/applications/get_station/controllers/remotectrl.py", line 88, in <module> File "/root/python2.7/Python-2.7.6/web2py/gluon/globals.py", line 385, in <lambda> self._caller = lambda f: f() File "/root/python2.7/Python-2.7.6/web2py/applications/get_station/controllers/remotectrl.py", line 85, in index xmlstr = ET.tostring(tree,encoding=None) File "build/bdist.linux-i686/egg/elementtree/ElementTree.py", line 1056, in tostring ElementTree(element).write(file, encoding) File "build/bdist.linux-i686/egg/elementtree/ElementTree.py", line 584, in __init__ assert element is None or iselement(element) AssertionError Error snapshot help <type 'exceptions.AssertionError'>() Not sure what is the issue here, why is it not printing XML data in to index.html ? Thanks for help -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.