Ich verwende Python und requests
Bibliothek, um POST
Anfragen mit einer XML-Datei zu senden. Meine XML-Datei sieht wie folgt aus:Variablen an XML-Zeichenfolge anhängen, die in einer Variablen gespeichert wird
property_name = """<wfs:Property>
<wfs:Name>Adm2_NAME</wfs:Name>
<wfs:Value>fff</wfs:Value>
</wfs:Property>"""
xml = """<wfs:Transaction service="WFS" version="1.0.0"
xmlns:ogc="http://www.opengis.net/ogc"
xmlns:wfs="http://www.opengis.net/wfs">
<wfs:Update typeName="geonode:tjk_nhr_shockriskscore">
""" + property_name + """
<ogc:Filter>
<ogc:FeatureId fid="tjk_nhr_shockriskscore.2"/>
</ogc:Filter>
</wfs:Update>
</wfs:Transaction>"""
Wie man dort sehen kann eine property_name
Variable ist, die tatsächlich ist, wird durch eine Funktion erzeugt werden.
Jetzt habe ich die property_name
Variable manuell durch Verketten der XML-Zeichenfolge hinzugefügt. Aber da ich viele dieser Variablen haben werde, muss ich einen Weg finden, sie an der richtigen Position anzuhängen.
Was ist ein richtiger Weg, dies mit Python zu tun? Gibt es Bibliotheken oder empfohlene Techniken, um dies zu erreichen?
Haben Sie versucht, '.format()'? –
Was ist das XML-Datenmuster Ihres Servers? Meine Idee verwendet nicht 'property' Definition cos hat ein Update bekommen. Verwenden Sie " Adm2_NAME fff ' unter 'Update-Abschnitt'. Vielleicht akzeptiert der Server Ihre 'Eigenschaft' nicht,' erzeugt einen ungültigen Schlüsselfehler'. Ihr Code hat keinen Fehler, muss aber das serverseitige Muster deklarieren. Also nenne vielleicht "Primärschlüssel" und keine "Eigenschaft". –
dsgdfg