code: def execute(self, commands):
          
          try:
              commands = [i.strip() for i in commands.split(' ; ')]
          except (TypeError, AttributeError):
              pass # assume an iterable
  
          for command in commands:
              try:
                  method, args = command.split('=', 1)
                  args = tuple(CommaLexer(args))
              except (ValueError, TypeError) as exc:
                  raise error.UserError("Bad command %r, probably missing a '=' (%s)" % (command, exc))
  
              def print_result(data):
                  "Helper to print XMLRPC call results"
                  args_list = ''
                  if args:
                      args_list = '"' + '","'.join(args) + '"'
                  print('%s\t%s\t%s=%s' % (self._fields["hash"], data, method.lstrip(':'), args_list))
  
              observer = print_result if method.startswith('>') else None
              method = method.lstrip('>')
              if not (method.startswith(':') or method[:2].endswith('.')):
                  method = 'd.' + method
              self._make_it_so("executing command on", [method], *args, observer=observer)
docs: Execute XMLRPC command(s).