Woodz
Lieutenant
- Registriert
- Apr. 2009
- Beiträge
- 719
Hallo Leute.
Ich habe das Problem auch schon auf Stackoverflow gepostet, also wundert euch nicht, wenn ihr dort auf die gleiche Frage trefft.
Folgende Situation:
Ich möchte eine bufr-Datei unter einer genauen URL im Web öffnen, ohne sie vorher auf Festplatte downloaden zu müssen.
Das hab ich bis jetzt "geleistet":
Dieser Code endet in einen:
Scheinbar kann die hauseigene Python-Funktion open() Objekte vom Typ BytesIO nicht öffnen.
Hat jemand eine brauchbare Idee?
Beste Grüße
Ich habe das Problem auch schon auf Stackoverflow gepostet, also wundert euch nicht, wenn ihr dort auf die gleiche Frage trefft.
Folgende Situation:
Ich möchte eine bufr-Datei unter einer genauen URL im Web öffnen, ohne sie vorher auf Festplatte downloaden zu müssen.
Das hab ich bis jetzt "geleistet":
Python:
import requests
from io import BytesIO
import eccodes as ecc
my_url = "https://opendata.meteo.be/ftp/observations/synop/2025/02/04/11/synop_6494_2025020411.bufr"
with requests.request(method='GET', url=my_url, headers={'cache-control': "no-cache"}) as response:
if response.ok:
with open(BytesIO(response.content), 'rb') as fp:
num_msgs = ecc.codes_count_in_file(fp)
bid = ecc.codes_bufr_new_from_file(fp)
print(num_msgs)
else:
print(f'{response.reason}')
Dieser Code endet in einen:
TypeError: expected str, bytes or os.PathLike object, not BytesIO
Scheinbar kann die hauseigene Python-Funktion open() Objekte vom Typ BytesIO nicht öffnen.
Hat jemand eine brauchbare Idee?
Beste Grüße