Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo escribir si el parámetro de Python es una cadena XML?

¿Cómo escribir si el parámetro de Python es una cadena XML?

Pasar una cadena XML como parámetro puede provocar errores al llamar a un script de Python porque el sistema operativo o el intérprete de Python pueden interpretar algunos caracteres especiales como comandos o códigos. Para evitar este problema, puede pasar la cadena XML como un archivo de texto o utilizar la codificación base64 para codificar la cadena en caracteres no especiales. A continuación se muestran ejemplos de ambos métodos.

Método 1: Guarde la cadena XML en un archivo, pasando el nombre del archivo como parámetro:

Guarde la cadena XML en un archivo, como input.xml.

Modifique el script de Python para aceptar un nombre de archivo como parámetro:

importar sistema

importar xml .etree.ElementTree como ET

filename = sys.argv[1]

Filename = sys.argv[1]

Método 1: guarde la cadena XML en un archivo y pase el nombre del archivo como parámetro:

p>

Guarde la cadena XML en un archivo, como input.xml. argv[1]

con open(nombre de archivo, 'r') como archivo:

xml_string = file.read()

xml_root = ET.fromstring( xml_string)

Pase el nombre del archivo al llamar al script: python xxx.py input.xml

Método 2: use codificación base64:

use base64 para codificar caracteres XML Codifique la cadena:

importar base64

xml_string = 'lt;?xml version="1.0" encoding="UTF-8" gt;...'

xml_root = ET.fromstring(xml_string)

Pase el nombre del archivo al llamar al script: python xxx...b64decode(encoded_xml. encode()).decode()

xml_root = ET.fromstring(decoded_xml)

Pase la cadena codificada en base64 al llamar al script: python xxx.py "base64_encoded_string"

Los dos métodos anteriores pueden efectivamente Evite pasar caracteres XML Error de cadena. Elija el método apropiado según las necesidades reales.