Cara Memeriksa Tag OneNote dalam Python
OneNote membenarkan pengguna menandakan kandungan dengan tag berwarna: bintang, kotak semak, bendera penting, dan label khusus. Aspose.Note FOSS untuk Python mendedahkan anotasi ini sebagai objek NoteTag pada nod RichText, Image, AttachedFile, dan Table melalui sifat .Tags mereka. Panduan ini menunjukkan cara membacanya.
Panduan Langkah demi Langkah
Langkah 1: Pasang Aspose.Note FOSS untuk Python
pip install aspose-noteLangkah 2: Muat Fail .one
from aspose.note import Document
doc = Document("TaggedNotes.one")
print(f"Pages: {len(list(doc))}")Langkah 3: Cari Tag pada Nod RichText
Kebanyakan tag dilampirkan kepada blok teks:
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}")Langkah 4: Cari Tag pada Imej
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}")Langkah 5: Cari Tag pada Jadual
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]}")Langkah 6: Kumpulkan Semua Tag Merentasi Dokumen
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 Rujukan Sifat
| Sifat | Jenis | Keterangan |
|---|---|---|
Icon | int | None | Pengenal bentuk tag berangka (bintang, kotak semak, anak panah, dll.) |
Label | str | None | Rentetan label yang boleh dibaca manusia (contoh: "Important", "To Do") |
FontColor | int | None | Warna teks sebagai integer ARGB |
Highlight | int | None | Warna sorotan sebagai integer ARGB |
CreationTime | datetime | None | Bilakah tag dicipta |
CompletedTime | datetime | None | Bilakah tag diselesaikan (None jika belum selesai) |
Status | TagStatus | TagStatus.Completed jika selesai, jika tidak TagStatus.Open |
Tapis Tag Selesai vs Tertunda
Tag yang telah ditanda (seperti kotak pilihan “To Do”) mempunyai medan bukan-None CompletedTime:
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}")Cipta NoteTag (Dalam Memori)
Kaedah kilang NoteTag.CreateYellowStar() mencipta nod tag yang anda boleh lampirkan kepada kandungan baru dalam memori:
from aspose.note import NoteTag
tag = NoteTag.CreateYellowStar()
print(f"Created tag: Icon={tag.Icon} Label={tag.Label!r}")Penciptaan dalam memori berguna untuk keserasian API. Oleh kerana menulis kembali ke
.onetidak disokong, tag yang dibuat tidak dapat disimpan ke fail.
Isu Umum
Tiada tag ditemui (dokumen mengembalikan senarai Tag kosong): Tidak semua fail .one mengandungi tag. Sahkan dokumen sumber mempunyai tag yang dapat dilihat dalam Microsoft OneNote sebelum menyelesaikan masalah kod.
tag.Label ialah rentetan kosong: Beberapa bentuk tag tidak mempunyai label teks dalam metadata fail. Gunakan tag.Icon untuk mengenal pasti jenis tag secara programatik.
Sumber Berkaitan: