Code: Alles auswählen
for z in logfile.readlines():
print z
anstatt dem was drinsteht. sicherlich ein prob mit dem zeichensatz. wie kann ich es mir richtig ausgeben lassen?ÿþS
irgendwelche ideen?
MfG VikingRussel
Code: Alles auswählen
for z in logfile.readlines():
print z
anstatt dem was drinsteht. sicherlich ein prob mit dem zeichensatz. wie kann ich es mir richtig ausgeben lassen?ÿþS
Code: Alles auswählen
# Öffnen von Log-Datei(en)
logfile = codecs.open('X:\\xxx\\xxx\\xxx\\xxx.log', 'r', 'utf-16')
#Suchmuster
medium = re.compile('^Mediumname:')
drive = re.compile('^Sicherung von')
art = re.compile('^Sicherungsart:')
begin = re.compile('^Sicherung begonnen')
end = re.compile('^Sicherung abgeschlossen')
directory = re.compile('^Verzeichnisse:')
files = re.compile('^Dateien:')
time = re.compile('^Zeit:')
error = re.compile('^Der Vorgang wurde nicht')
Neben dem Zitat Knopf gibt es einen Edit Knopf. Mit dem kannst du bestehende Posts bearbeiten/erweitern. Dann ist es nicht nötig immer neue zu schreiben.vikingrussel hat geschrieben:sie meinen? vielleicht etwas konkreter
Code: Alles auswählen
medium = re.compile('^Mediumname:')
Code: Alles auswählen
# -*- coding: cp1252 -*-
from xml.dom.minidom import parseString
from xml.etree.ElementTree import Element, SubElement, tostring, dump
import re
import sys
import codecs
#import string
# Öffnen von Log-Datei(en)
logfile = codecs.open('C:\Dokumente und Einstellungen\\maruscma\\Desktop\\backup-log\\backup01.log', 'r', 'utf-16')
#Suchmuster
medium = re.compile('^Mediumname:')
drive = re.compile('^Sicherung von')
art = re.compile('^Sicherungsart:')
begin = re.compile('^Sicherung begonnen')
end = re.compile('^Sicherung abgeschlossen')
directory = re.compile('^Verzeichnisse:')
files = re.compile('^Dateien:')
time = re.compile('^Zeit:')
error = re.compile('^Der Vorgang wurde nicht')
for z in logfile.readlines():
print z
#medium = "Medium"
#drive = "Sicherung"
# XML-Baum erzeugen
root = Element('events')
event_node = SubElement (root, 'event')
SubElement (event_node, 'Mediumname').text = medium
SubElement (event_node, 'Sicherung von').text = drive
#SubElement (event_node, 'Sicherungsart:').text = art
#SubElement (event_node, 'Sicherung begonnen').text = begin
print tostring(root)
ideen?Traceback (most recent call last):
File "C:\Python25\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 307, in RunScript
debugger.run(codeObject, __main__.__dict__, start_stepping=0)
File "C:\Python25\Lib\site-packages\pythonwin\pywin\debugger\__init__.py", line 60, in run
_GetCurrentDebugger().run(cmd, globals,locals, start_stepping)
File "C:\Python25\Lib\site-packages\pythonwin\pywin\debugger\debugger.py", line 631, in run
exec cmd in globals, locals
File "C:\Dokumente und Einstellungen\maruscma\Desktop\test_xml.py", line 36, in <module>
print tostring(root)
File "C:\Python25\lib\xml\etree\ElementTree.py", line 1009, in tostring
ElementTree(element).write(file, encoding)
File "C:\Python25\lib\xml\etree\ElementTree.py", line 663, in write
self._write(file, self._root, encoding, {})
File "C:\Python25\lib\xml\etree\ElementTree.py", line 707, in _write
self._write(file, n, encoding, namespaces)
File "C:\Python25\lib\xml\etree\ElementTree.py", line 707, in _write
self._write(file, n, encoding, namespaces)
File "C:\Python25\lib\xml\etree\ElementTree.py", line 705, in _write
file.write(_escape_cdata(node.text, encoding))
File "C:\Python25\lib\xml\etree\ElementTree.py", line 813, in _escape_cdata
_raise_serialization_error(text)
File "C:\Python25\lib\xml\etree\ElementTree.py", line 777, in _raise_serialization_error
"cannot serialize %r (type %s)" % (text, type(text).__name__)
TypeError: cannot serialize <_sre.SRE_Pattern object at 0x00DF0158> (type SRE_Pattern)
Woraus möchtest du einen Text machen? Aus den Suchmustern? Wozu? Weshalb? Warum?in der doku von "re" steht davon nichts, wie ich daraus einen "text" machen soll, oder ich hab es net gesehen
Code: Alles auswählen
<events>
<event>
<Mediumname>Medium</Mediumname>
</event>
</events>
Code: Alles auswählen
SubElement (event_node, 'Mediumname').text = medium.match(logfile.read()).group()