Python için FOSS, Microsoft Office’u kullanmadan, COM otomasyonu ve özel çalıştırma süresi gerektirmeden tamamen Python’dan Microsoft OneNote (.one) dosyalarını okumanızı sağlayan %100 ücretsiz bir MIT lisanslı kütüphanedir. Net arayüzü için tanıdık olan Aspose.Note üzerinde modellenen temiz bir kamu API (aspose.note.*) sunar. Bu , saf Python ile yazılmış yerleşik MS-ONE / OneStore ikili analiz cihazı tarafından desteklenir .
PyPI’den pip install aspose-note ile yükleyin (veya PDF ihracatını etkinleştirmek için pip install "aspose-note[pdf]"). Python 3.10 veya daha yeni bir sürüm gerektirir.
Kütüphane, belge otomasyonu senaryoları, içerik indeksleme boru hattı, arşiv araçları ve Microsoft Office bağımlılığı olmadan OneNote içeriğini tüketmesi gereken sunucu tarafındaki herhangi bir iş akışı için uygundur. Kurumsal ürün ailesi için Aspose.Note — Enterprise Product Family’e bakın.
Document aracılığıyla bir dosya yolu veya ikili akıştan herhangi bir OneNote bölümünü açın.Document → Page → Outline → OutlineElement → RichText / Image / Table / AttachedFile yönlendirin.RichText.Text üzerinden çiğ metanı okuyun veya kalın, italik, yazı tipi, renk ve hiper bağlantı meta verileri için TextRun bölümlerini kontrol edin.Table → TableRow → TableCell hiyerarşilerini aşmak; sütun genişliklerini TableColumn.Width aracılığıyla okumak.NoteTag metadatalarını (şekil, etiket, renk, tamamlanma durumu) okuyun..one dosyalarından kaydet.Document‘ı Document.Save(path, SaveFormat.Pdf) kullanarak PDF olarak kaydedin. FOSS sürümü varsayılan bir render kullanır; gelişmiş sayfa başına PDF seçenekleri bu sürümde mevcut değildir.Image düğümlerini yineleyerek ham baytları (Bytes), dosya adını (FileName) ve boyutları (OriginalWidth, OriginalHeight) alın.AttachedFile düğümlerini yineleyerek gömülü dosya eklerini diske kaydedin..one dosyalarını ikili akıştan (ör. io.BytesIO) disk üzerine yazmadan açın.Aspose.Note FOSS tek bir pip install aspose-note komutuyla kurulur. Temel paketin isteğe bağlı bağımlılıkları yoktur; PDF dışa aktarma, ReportLab gerektirir ve pip install "aspose-note[pdf]" aracılığıyla kurulur.
API, .NET arayüzü için tanıdık Aspose.Note üzerine modellenmiştir: Document, Page, Outline, RichText, Image, Table, AttachedFile. Kütüphane MIT-licensed, açık kaynaklıdır ve GitHub’ta hata raporları ve katkıları kabul eder.
Pip ile yükleyin, ardından OneNote ikili formatını analiz etmek için bir dosya yolu Document()‘a geçin. GetChildNodes(RichText) derin bir rekursif arama yapar ve belgedeki her metin düğmesini döndürür; bu da tam metini indeksleme veya göç boru hattı için yararlıdır.
pip install aspose-note
from aspose.note import Document, RichText
doc = Document("notebook.one")
print(f"Pages: {len(list(doc))}")
# Extract all text across the entire document
texts = [rt.Text for rt in doc.GetChildNodes(RichText) if rt.Text]
for text in texts:
print(text)
PDF ihracı için isteğe bağlı ReportLab bağımlılığı gereklidir. pip install "aspose-note[pdf]" ile yükleyin. Aynı Document nesnesi, tüm gömülü resimleri bir geçişte diske çıkarmak ve kaydetmek için Image düğümlerinde de tekrarlanabilir.
from aspose.note import Document, SaveFormat, Image
import pathlib
doc = Document("notebook.one")
# Export the document to PDF (requires aspose-note[pdf])
doc.Save("output.pdf", SaveFormat.Pdf)
# Save all embedded images to disk
out_dir = pathlib.Path("images")
out_dir.mkdir(exist_ok=True)
for i, img in enumerate(doc.GetChildNodes(Image)):
name = img.FileName or f"image_{i}.bin"
(out_dir / name).write_bytes(img.Bytes)
Microsoft Office, COM otomasyonu veya herhangi bir özel çalıştırma süresi gerektirmeden Microsoft OneNote (.one) dosyalarını okumak için ücretsiz, MIT lisanslı Python kütüphanesidir.
OneNote 2010, OneNOte Online ve OneNot 2007 biçim çeşitleri. Geçerli herhangi bir .one bölüm dosyası yüklenebilir.
pip install aspose-note‘ı temel kütüphane için çalıştırın veya PDF ihracatı için isteğe bağlı ReportLab bağımlılığını dahil etmek için pip install "aspose-note[pdf]".
Evet. Document.Save(path, SaveFormat.Pdf) çağırın. PDF dışa aktarma, [pdf] ekstra aracılığıyla kurulan isteğe bağlı ReportLab bağımlılığını gerektirir.
Evet. Document sınıfı ikili bir akış (örneğin, io.BytesIO veya HTTP yanıt vücudu) kabul eder böylece diske yazmadan dosyaları işleyebilirsiniz.
Python 3.10 veya daha yeni bir sürüm gereklidir.
Hayır. Mevcut sürüm sadece okuma özelliğindedir. Geçerli herhangi bir .one bölüm dosyasını açabilir ve analiz edebilir, ancak OneNote ikili biçimine geri yazmak desteklenmez.
Hayır. Parola korumalı .one dosyasının yüklenmesi bir IncorrectPasswordException oluşturur. Şifreli belgeler mevcut sürümde desteklenmez.
Kütüphane MIT lisanslı ve GitHub’da barındırılmıştır. Hata raporları ve çekme istekleri hoş karşılanmaktadır.