Estoy accediendo a la interfaz IMAP de GMail a través de python. Tengo un comando como este:El comando IMAP "encabezado de búsqueda" falla cuando el texto de búsqueda contiene un signo de exclamación (!), Ampersand (&), etc.
UID SEARCH HEADER Message-ID "[email protected]"
que tiene éxito (1 devuelve el UID del mensaje coincidente, o 0 si no existe). Sin embargo, si el texto de búsqueda contiene ciertos caracteres (como & o!), El texto de búsqueda se trunca en ese punto. Esto significa:
UID SEARCH HEADER Message-ID "[email protected]"
el tratamiento es el mismo que
UID SEARCH HEADER Message-ID ""
también:
UID SEARCH HEADER Message-ID "[email protected]"
se trata como:
UID SEARCH HEADER Message-ID "abc"
He pasado por el lenguaje IMAP especificaciones, y de la especificación de lenguaje ABNF s eems como esos caracteres deben ser válidos. ¿Por qué gmail trunca estas frases de búsqueda en el "!" y "&" caracteres? ¿Hay alguna forma de escapar de ellos? (¡He intentado!, Falla como una cadena mal codificada). ¿Hay un RFC o un documento que muestre lo que realmente debería ser aceptado? ¿Es esto un error en la implementación imap de gmail?
También he intentado formato literal, los mismos resultados:
UID SEARCH HEADER Message-ID {15}
[email protected]
Aún así tratadas como:
UID SEARCH HEADER Message-ID {3}
abc
Gracias!
IMAP RFC3501 comando Buscar: http://tools.ietf.org/html/rfc3501#section-6.4.4 sintaxis formal: http://tools.ietf.org/html/rfc3501#section-9
puedo confirmar que no hay nada especial sobre el uso de un signo de exclamación en la consulta de búsqueda. Lo más probable es que hayas encontrado un error en Gmail.Sugiero usar varios servidores IMAP diferentes durante el desarrollo, en particular debido a que la implementación IMAP de Gmail no es muy conocida por su conformidad con la especificación IMAP. – nosid
Gracias, nosid. Desafortunadamente, el servidor IMAP que necesito usar con este código es gmail, por lo que las pruebas en otros no ayudarán con este error. Pero es bueno saber que no estoy leyendo las especificaciones incorrectamente. Trataré de encontrar la manera de reportar este error a google. – rocketmonkeys
Sí, actualmente tengo este problema al hacer una búsqueda IMAP en Gmail a través del cliente de correo * alpine * que intenta seleccionar todos los mensajes con temas que contengan '!'. –