Script de ejemplo

El script siguiente se proporciona como ejemplo para el complemento de búsqueda de script. Está escrito en Python 2.6. El propósito de este script es proporcionar un ejemplo básico de cómo funciona y qué lenguaje usa para aprender a escribir los scripts en Python que se pueden usar para los complementos de búsqueda de scripts.
Este script contiene la clave de parámetro de búsqueda
date-sent
y devuelve el "valor de script" para el atributo personalizado
Script-attribute
.
Como Python es estricto con los requisitos de indentación, si se copia y pega este script de ejemplo usted necesitará probablemente cambiarle el formato de modo que aparezca exactamente según lo mostrado aquí.
__name__="__main__" import sys, os, traceback import commands # Switch this to 0 when in production mode. debugMode = 1 def main(args): try: attributeMap = parseInput(args) # This is the lookup parameter key. # Comment-out this line for testing the script standalone. dateSent = attributeMap["date-sent"] # "Script-attribute" is the custom attribute. # "script value" is the return value. # You cannot have a space between the custom attribute and the # attribute value. For example, "Script-attribute = script value" # Does not work for Script Lookup Plugins. print "Script-attribute=script value" return except: error() print "something went wrong!" return "something went wrong!" def parseInput(args): # Input data is a list of key value pairs seperated by carraige return # Create a python dictionary to create the attribute map attributeMap = {} delimiter = "=" for item in args: if delimiter in item: tuple = item.split(delimiter) attributeMap[tuple[0]] = tuple[1] return attributeMap def error(): # "SCRIPT PROCESSING ERROR" if(debugMode): #print "Script Processing Error" traceback.print_exc(file=sys.stdout) return "" #----------------------------------------------------------------- # DOS-style shells (for DOS, NT, OS/2): #----------------------------------------------------------------- def getstatusoutput(cmd): """ Return (status, output) of executing cmd in a shell.""" pipe = os.popen(cmd + ' 2>&1', 'r') text = pipe.read() sts = pipe.close() if sts is None: sts = 0 if text[-1:] == '\n': text = text[:-1] return sts, text #----------------------------------------------------------------- # Entry Point #----------------------------------------------------------------- if __name__ == "__main__": if(len(sys.argv) == 0): error() else: main(sys.argv)