ich würde gerne Daten aus einer xml in Calc einfügen. u.a enthält die xml folgende Daten:
Code: Alles auswählen
<ChapterTimeStart>00:00:00.000000000</ChapterTimeStart>
<ChapterTimeEnd>00:02:01.121000000</ChapterTimeEnd>
Moderator: Moderatoren
Code: Alles auswählen
<ChapterTimeStart>00:00:00.000000000</ChapterTimeStart>
<ChapterTimeEnd>00:02:01.121000000</ChapterTimeEnd>
Code: Alles auswählen
import uno
import sys
import re
context = XSCRIPTCONTEXT
pfad = "/hier/steht/der/pfad/zu/deinem.xml"
def makeDataArray( olist):
size = len( olist ) -1
oDoc= context.getDocument()
oSheet = oDoc.Sheets.getByIndex(0)
oRange = oSheet.getCellRangeByPosition(0, 0, size , 0)
oRange.setFormulaArray( (olist ,))
rex = re.compile("""<ChapterTime(?:Start|End)>(\d{2}:\d{2}:\d{2}\.\d{9})</ChapterTime(?:Start|End)>""")
def catchtimes( ):
with open( pfad ) as timefile:
alltext = timefile.read()
timelist = rex.findall( alltext )
makeDataArray( tuple(timelist))
def maketestArray():
oDoc= context.getDocument()
oSheet = oDoc.Sheets.getByIndex(0)
oRange = oSheet.getCellRangeByName("A1:C3")
oRange.setDataArray(((1, 2, 3),(4, 5, 6),('Hello' ,'to', 'you'),))
g_exportedScripts = catchtimes,
Code: Alles auswählen
import uno
import re
context = XSCRIPTCONTEXT
pfad = r"/hier/steht/der/pfad/zu/deinem.xml"
def makeDataArray( olist):
rowsize = len( olist ) -1
colsize = len( olist[0] )-1
oDoc= context.getDocument()
oSheet = oDoc.Sheets.getByIndex(0)
oRange = oSheet.getCellRangeByPosition(0, 0, colsize , rowsize)
oRange.setFormulaArray( olist )
tags = [ "ChapterTime", "Start", "End", "(\d{2}:\d{2}:\d{2}\.\d{9})" ]
rex = re.compile( """<{0}{1}>{3}</{0}{1}>.*?<{0}{2}>{3}</{0}{2}>""".format(*tags), re.S)
def catchtimes( ):
with open( pfad ) as timefile:
alltext = timefile.read()
timelist = [ elem.groups() for elem in rex.finditer( alltext )]
makeDataArray( tuple(timelist))
g_exportedScripts = catchtimes,
Nein, macht im Prinzip keinen Unterschied, hinterher muss nur eine Ordnerstruktur ...Scripts → python → timecatcher.py existieren.Macht es einen Unterschied ob ich die *.py in D: entpacke, ändere, speichere und in den Ordner python kopiere oder ob ich das Archiv in Scripts kopiere und dort entpacke? Ich hab beides versucht.
Einfach:Wie müsste denn der Pfad korrekt aufgebaut sein, wenn eine xml unter D:\neu\neu.xml liegt?
Code: Alles auswählen
<ChapterTimeStart>00:00:00.000000000</ChapterTimeStart> ....
<ChapterTimeEnd>00:02:01.121000000</ChapterTimeEnd>