erstellt writed I-App, die Bestelldaten von Prestashop Datenbank zu erhalten, setzen Sie sie in XML-Datei importieren, dann UPS WorldShip (Software für das Senden von UPS Pakete), die XML-Datei und erstellen eigene out-Datei mit Ergebnis als Trackingnummer. Im nächsten Schritt analysiere ich diese Exit-Datei, um die Tracking-Nummer zu erhalten und sie in meiner lokalen Datenbank zu speichern.die Datei lesen, wenn es in Python
Mein Problem ist, wie gerade erstellt (.out) erhält nur dann Datei, wenn es fertig ist (erstellt). In diesem Moment habe ich Code wie folgt:
tree.write("C:/ProgramData/UPS/WSTD/IMPEXP/XML Auto Import/" + today + "-" + order_id + ".xml", encoding="utf-8", xml_declaration=True)
time.sleep(1)
out_file = etree.parse("C:/ProgramData/UPS/WSTD/IMPEXP/XML Auto Import/" + today + "-" + order_id + ".out")
Und das ist schlechte Lösung. Ich möchte "warten bis die Datei erstellt wird".
Ich weiß in Python ist Fonction isfile()
welche Kontrolle Datei existiert, aber ich weiß nicht, wie man überprüft, bis es in der Tat wird es sein.
See [ 'Watchdog'] (https://pypi.python.org/pypi/watchdog) für plattformübergreifende, ereignisbasierte Überwachung von Systemereignissen. Oder verwenden Sie einfach eine altmodische Abfrage in einer expliziten Schleife. –