Hogyan ellenőrizhetők a OneNote címkék a Python
A OneNote lehetővé teszi a felhasználók számára, hogy színes címkékkel jelöljék a tartalmat: csillagok, jelölőnégyzetek, fontos jelzések és egyéni címkék. Aspose.Note FOSS a Python számára ezeket a megjegyzéseket mint NoteTag objektumok a RichText, Image, AttachedFile, és Table csomópontok a .Tags tulajdonságuk. Ez az útmutató bemutatja, hogyan olvashatók ezek.
Lépésről-lépésre útmutató
1. lépés: Telepítse a Aspose.Note FOSS for Python‑t
pip install aspose-note2. lépés: Töltse be a .one fájlt
from aspose.note import Document
doc = Document("TaggedNotes.one")
print(f"Pages: {len(list(doc))}")3. lépés: Címkék keresése a RichText csomópontokon
A legtöbb címke szöveges blokkokhoz van csatolva:
from aspose.note import Document, RichText
doc = Document("TaggedNotes.one")
for rt in doc.GetChildNodes(RichText):
for tag in rt.Tags:
print(f"[RichText] Label={tag.Label!r} Icon={tag.Icon} text={rt.Text.strip()!r}")4. lépés: Címkék keresése képeken
from aspose.note import Document, Image
doc = Document("TaggedNotes.one")
for img in doc.GetChildNodes(Image):
for tag in img.Tags:
print(f"[Image] Label={tag.Label!r} filename={img.FileName!r}")5. lépés: Címkék keresése táblázatokban
from aspose.note import Document, Table
doc = Document("TaggedNotes.one")
for table in doc.GetChildNodes(Table):
for tag in table.Tags:
print(f"[Table] Label={tag.Label!r} widths={[col.Width for col in table.Columns]}")6. lépés: Az összes címke összegyűjtése a dokumentumban
from aspose.note import Document, RichText, Image, Table
doc = Document("TaggedNotes.one")
all_tags = []
for rt in doc.GetChildNodes(RichText):
for tag in rt.Tags:
all_tags.append({"type": "RichText", "Label": tag.Label,
"CompletedTime": tag.CompletedTime, "text": rt.Text.strip()})
for img in doc.GetChildNodes(Image):
for tag in img.Tags:
all_tags.append({"type": "Image", "Label": tag.Label,
"CompletedTime": tag.CompletedTime, "file": img.FileName})
for table in doc.GetChildNodes(Table):
for tag in table.Tags:
all_tags.append({"type": "Table", "Label": tag.Label,
"CompletedTime": tag.CompletedTime})
print(f"Total tagged items: {len(all_tags)}")
for item in all_tags:
print(item)NoteTag tulajdonságreferencia
| Tulajdonság | Típus | Leírás |
|---|---|---|
Icon | `int | None` |
Label | `str | None` |
FontColor | `int | None` |
Highlight | `int | None` |
CreationTime | `datetime | None` |
CompletedTime | `datetime | None` |
Status | TagStatus | TagStatus.Completed ha befejezett, egyébként TagStatus.Open |
Befejezett és függőben lévő címkék szűrése
A bejelölt címkék (például a „To Do” jelölőnégyzetek) nem-None CompletedTime mező:
from aspose.note import Document, RichText
doc = Document("TaggedNotes.one")
pending, done = [], []
for rt in doc.GetChildNodes(RichText):
for tag in rt.Tags:
item = {"Label": tag.Label, "text": rt.Text.strip()}
if tag.CompletedTime is None:
pending.append(item)
else:
done.append(item)
print(f"Pending: {len(pending)} Done: {len(done)}")
for p in pending:
print(f" [ ] {p['Label']}: {p['text']!r}")
for d in done:
print(f" [x] {d['Label']}: {d['text']!r}")NoteTag létrehozása (memóriában)
A gyári módszer NoteTag.CreateYellowStar() létrehoz egy címke csomópontot, amelyet új tartalomhoz csatolhat memóriában:
from aspose.note import NoteTag
tag = NoteTag.CreateYellowStar()
print(f"Created tag: Icon={tag.Icon} Label={tag.Label!r}")A memóriában történő létrehozás hasznos az API kompatibilitás miatt. Mivel a visszaírás .one nem támogatott, a létrehozott címkék nem menthetők fájlba.
Gyakori problémák
Nem található címke (a dokumentum üres Címkék listát ad vissza): Nem minden .one fájl tartalmaz címkéket. Ellenőrizze, hogy a forrásdokumentumban a Microsoft OneNote-ban látható címkék vannak-e, mielőtt a kód hibakeresésébe kezdene.
tag.Label egy üres karakterlánc: Néhány címkeforma nem rendelkezik szöveges címkével a fájl metaadataiban. Használja tag.Icon a címketípus programozott azonosításához.
Kapcsolódó források: