Pipes con entrada

¿Para qué sirve un pipe con entradas de datos, si hay que ir a la página de Pipes para introducir los datos a mano? Hemos visto que podemos pasar nuestros valores a través de una URL (con un GET de HTTP); esto nos permite la automatización necesaria para añadir un elemento más a la cadena.

Vamos a preparar un bookmarklet sencillo. Un bookmarklet es una URL de protocolo javascript: que contiene código ejecutable (escrito en… Javascript, claro). Huelga decir que lo probaré en Firefox, y si funciona en Explorer 😉 pues mejor que mejor. Allá va.

javascript:
    void(
        q0=prompt('BOE-Búsqueda en título:','igualdad')
    );
    if(q0)
        location.href='http://pipes.yahoo.com/pipes/pipe.run?
        _id=sOW2lOvS2xGGAgtA1vC6Jw&_render=rss&titulo='+
        escape(q0)

El código del bookmarklet se escribe todo en una misma línea, pero lo presento dividido e indentado para que se vea mejor la estructura. Además de presentarlo en una sola línea se procura que quede lo más comprimido posible (como un Perl one-liner) para encajar en la limitación de longitud de una URL en un favorito… alrededor de 2000 caracteres en Explorer (otros no tienen esas limitaciones).

Se trata de un código muy sencillo, en el que podríamos añadir más variables y llamadas a prompt para introducir más parámetros de entrada; lo fundamental es escapar, es decir, realizar un URL encoding mediante la función escape, el valor de lo introducido en las cajas de entrada a la hora de componer la URL (línea location.href). Aquí está, para añadirlo a los favoritos: bookmarklet BOEv2.