Python -Schreibdatei "Codierungserkennung: UTF_8 ist höchstwahrscheinlich die eine."Python

Python-Programme
Anonymous
 Python -Schreibdatei "Codierungserkennung: UTF_8 ist höchstwahrscheinlich die eine."

Post by Anonymous »

Ich habe ein Python -Skript, das eine REST -API verwendet, um XML -Dateien aus einem Tool zu erhalten. Dies ist das Herz davon: < /p>

Code: Select all

def get_output(self, url, output_filename):
xml_response = self.client.get_request(url)
if not xml_response:
self.logger.error(f"no xml_response:{output_filename}")
return False
else:
self.logger.info(f"{output_filename}")
output_file = open(output_filename, 'w', encoding='utf-8')
output_file.write(xml_response.text)
output_file.close()
return True
< /code>
Der Schreibaufruf führt zu einem Debug -Protokolleintrag: < /p>
Encoding detection: utf_8 is most likely the one.
< /code>
Gibt es eine Möglichkeit, das Schreiben explizit zu sagen, dass sie UTF8 verwenden, um diesen Protokolleintrag nicht zu erhalten?self.client.get_request(url)
ist im Wesentlichen:

Code: Select all

import requests
self.headers = {'Accept': 'application/rdf+xml'}
self.session = requests.Session()
response = self.session.get(url, allow_redirects=True, headers=self.headers)
< /code>
Dies ist ein sanierter Protokolleintrag: < /p>
2025-09-08T22:00:52+0000;INFO;XXX:./__auto_temp/2025-09-08_2200(+0000)___XXX.xml
2025-09-08T22:01:36+0000;DEBUG;https://XXX "GET /XXX HTTP/1.1" 200 None
2025-09-08T22:01:36+0000;INFO;./__auto_temp/2025-09-08_2200(+0000)___XXX.xml
2025-09-08T22:01:36+0000;INFO;get_output 1
2025-09-08T22:01:36+0000;INFO;get_output 2
2025-09-08T22:01:36+0000;DEBUG;Encoding detection: utf_8 is most likely the one.
2025-09-08T22:01:36+0000;INFO;get_output 3
2025-09-08T22:01:36+0000;INFO;get_output 4
Es sei denn, Protokolleinträge werden außerhalb des Bestellens angezeigt. Mein Experiment, das Logger-Aufrufe unter den Öffnungen/Schreiben/Schließen, zeigen, dass es das Schreiben ist, das den Eintrag verursacht.

Code: Select all

self.logger.info(f"{output_filename}")
self.logger.info('get_output 1')
output_file = open(output_filename, 'w', encoding='utf-8')
self.logger.info('get_output 2')
output_file.write(xml_response.text)
self.logger.info('get_output 3')
output_file.close()
self.logger.info('get_output 4')
return True

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post