Ich habs nochmal versucht mit den Informationen aus der verlinkten Seite:
Code: Alles auswählen
from __future__ import unicode_literals
from urllib2 import urlopen
import ssl ###
from datetime import datetime, timedelta
from functools import partial
def test():
ssl._create_default_https_context = ssl._create_unverified_context ####
ret = urlopen("https://www.ferienwiki.de/exports/ferien/2022/de/bayern.ics")
filedump, name = ret.readlines(), "2022_bayern"
out_isos = [name]
for line in filedump:
if line.startswith("DTSTART"):
start_date = convert2date(line)
d_part = partial(day_range, start_date)
elif line.startswith("DTEND"):
end_date = convert2date(line)
out_isos.extend(list(d_part(end_date)))
return tuple(zip(out_isos))
def day_range(start, end):
yield start.strftime('%Y-%m-%d')
while start < end:
start += timedelta(days=1)
yield start.strftime('%Y-%m-%d')
def convert2date(line):
_ , datestring = line.strip().split(':')
return datetime.strptime(datestring, '%Y%m%d')
def main(*_):
doc = XSCRIPTCONTEXT.getDocument()
sheets = doc.Sheets
try:
sheets.insertNewByName("ferien", sheets.Count)
except:
pass
ferien = sheets.getByName("ferien")
cursor = ferien.createCursor()
data = test()
cursor.collapseToSize(1,len(data))
cursor.setFormulaArray
if __name__ == '__main__':
out = test()
print(out)