Kā pārbaudīt OneNote birkas Python valodā
OneNote ļauj lietotājiem pievienot piezīmes saturam ar krāsainām birkām: zvaigznes, izvēles rūtiņas, svarīgi karogi un pielāgotas etiķetes. Aspose.Note FOSS for Python atklāj šīs anotācijas kā NoteTag objektus uz RichText, Image, AttachedFile un Table mezgliem caur to .Tags īpašību. Šis ceļvedis parāda, kā tās nolasīt.
Rokasgrāmata soli pa solim
1. solis: instalējiet Aspose.Note FOSS priekš Python
pip install aspose-note2. solis: Ielādēt .one failu
from aspose.note import Document
doc = Document("TaggedNotes.one")
print(f"Pages: {len(list(doc))}")Solis 3: Atrast tagus RichText mezglos
Lielākā daļa tagu ir pievienoti teksta blokiem:
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}")Solis 4: Atrast tagus attēlos
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. solis: Atrodiet tagus tabulās
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. solis: Savākt visus tagus visā dokumentā
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 īpašības atsauce
| Īpašība | Tips | Apraksts |
|---|---|---|
Icon | int | None | Skaitliska birkas formas identifikators (zvaigzne, izvēles rūtiņa, bulta utt.) |
Label | str | None | Cilvēkam lasāma etiķetes virkne (piem., "Important", "To Do") |
FontColor | int | None | Teksta krāsa kā ARGB vesels skaitlis |
Highlight | int | None | Izcelšanas krāsa kā ARGB vesels skaitlis |
CreationTime | datetime | None | Kad birka tika izveidota |
CompletedTime | datetime | None | Kad birka tika pabeigta (None, ja nav pabeigta) |
Status | TagStatus | TagStatus.Completed, ja pabeigta, pretējā gadījumā TagStatus.Open |
Filtrēt pabeigtās pret gaidāmās birkas
Tagi, kas ir atzīmēti (piemēram, “To Do” izvēles rūtiņas), ir ar ne-None CompletedTime lauku:
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}")Izveidot NoteTag (atmiņā)
Rūpnīcas metode NoteTag.CreateYellowStar() izveido tagu mezglu, ko varat pievienot jaunam saturam atmiņā:
from aspose.note import NoteTag
tag = NoteTag.CreateYellowStar()
print(f"Created tag: Icon={tag.Icon} Label={tag.Label!r}")Atmiņā izveide ir noderīga API saderībai. Tā kā rakstīšana atpakaļ uz
.onenav atbalstīta, izveidotās birkas nevar saglabāt failā.
Biežāk sastopamās problēmas
Nav atrastu tagu (dokuments atgriež tukšu Tagu sarakstu): Ne visi .one faili satur tagus. Pārbaudiet, vai avota dokumentam ir redzami tagi Microsoft OneNote, pirms risināt koda problēmas.
tag.Label ir tukša virkne: Dažām tagu formām faila metadatos nav teksta etiķetes. Izmantojiet tag.Icon, lai programmatūrā identificētu taga tipu.
Saistītie resursi: