Python Şablondan Word Belgesi Oluştur

Şablonlardan Word belgeleri oluşturmanın bir yolunu mu arıyorsunuz? Doğru yere geldiniz! Bu blog yazısında Python’da farklı türdeki veri kaynaklarını kullanan şablonlardan Word belgeleri oluşturmaya yönelik en iyi çözümü araştıracağız. XML, JSON veya CSV gibi çeşitli veri kaynaklarını kullanarak yer tutucuları doldurarak DOCX biçiminde Word belgeleri oluşturmak için önceden tanımlanmış şablonlardan nasıl yararlanacağınızı öğrenin.

Bu makale aşağıdaki konuları kapsamaktadır:

  1. Şablonlardan Word Belgeleri Oluşturmak için Python Kitaplığı
  2. XML Verilerini Kullanarak Şablondan Word Belgeleri Oluşturun
  3. JSON Verilerini Kullanarak Şablondan Word Belgeleri Oluşturun
  4. Python’da CSV Verileriyle Word Belgeleri Oluşturun
  5. Python LINQ Raporlama Motoru
  6. Ücretsiz Kaynaklar

Şablonlardan Word Belgeleri Oluşturmak için Python Kütüphanesi

Şablonlardan Word belgeleri oluşturmak için Aspose.Words for the Python API’sinin LINQ Reporting Engine‘ini kullanacağız. Bu motor metin, resimler, listeler, tablolar, köprüler ve yer imleri için farklı etiketleri destekler. Bu etiketleri içeren Word belgelerini doldururuz ve bunları XML, JSON veya CSV veri kaynaklarından gelen verilerle doldururuz. O halde Python kullanarak şablonlardan Word belgeleri oluşturmaya başlayalım.

Python için Aspose.Words’ün Kurulumu

Konsolda aşağıdaki pip komutunu kullanarak paketi indirebilir veya PyPI’den API’yi yükleyebilirsiniz yapabilirsiniz:

> pip install aspose-words

Python’da XML Verilerini Kullanarak Şablondan Word Belgeleri Oluşturma

XML veri kaynağını kullanarak bir şablondan Word belgesi oluşturmak için bir şablon dosyasına ve XML kaynak verilerine ihtiyacımız var. Şablon belgesinin içeriği olarak aşağıdaki yer tutucuları içeren bir Word belgesi (DOC/DOCX) oluşturacağız:

Name: <<[Name]>>, Age: <<[Age]>>, Date of Birth:
<<[Birth]:"dd.MM.yyyy">>

Children:
<<foreach [in Child]>><<[Child_Text]>>
<</foreach>>"""

Bu örnekte kullanacağımız XML veri kaynağı şöyledir:

<Person>
	<Name>John Doe</Name>
	<Age>30</Age>
	<Birth>1989-04-01 4:00:00 pm</Birth>
	<Child>Ann Doe</Child>
	<Child>Charles Doe</Child>
</Person>

Artık aşağıdaki adımları izleyerek XML veri kaynağından kolayca Word belgesi oluşturabiliriz:

  1. Document sınıfını kullanarak Word şablon dosyasını yükleyin.
  2. XmlDataSource sınıfının bir örneğini oluşturun ve bunu XML dosyasının yoluyla başlatın.
  3. ReportingEngine sınıfını somutlaştırın.
  4. ReportingEngine.BuildReport() yöntemini şablon, veri kaynağı ve veri kaynağı adıyla çağırın.
  5. Oluşturulan Word belgesini Document.Save() yöntemini kullanarak kaydedin.

Aşağıdaki kod örneği, Python’da bir XML veri kaynağından Word belgesinin nasıl oluşturulacağını gösterir.

# Bu kod örneği, XML veri kaynağı kullanılarak bir Şablondan Word belgesinin nasıl oluşturulacağını gösterir.
# Şablonu yükle
doc = aw.Document("D:\\Files\\template.docx")

# Veri kaynağını yükleyin
data_source = aw.reporting.XmlDataSource("D:\\Files\\data-source.xml")

# Raporlama motorunu başlat
engine = aw.reporting.ReportingEngine()
engine.build_report(doc, data_source, "persons");

# Belgeyi kaydet
doc.save("D:\\Files\\WordFromXML.docx")

Çıktı

Python'da XML Verilerini Kullanarak Şablondan Word Belgeleri Oluşturun

Python’da JSON Verilerini Kullanarak Şablondan Word Belgeleri Oluşturun

JSON veri kaynağını kullanarak bir Word belgesi oluşturmak için aşağıdaki Word şablonunu kullanacağız:

<<foreach [in managers]>>Manager: <<[Name]>>
Contracts:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>

Şablonu doldurmak için kullanacağımız JSON veri kaynağı aşağıdadır:

[
   {
       Name: "John Smith",
       Contract:
       [
           {
               Client:
               {
                   Name: "A Company"
               },
               Price: 1200000
           },
           {
               Client:
               {
                   Name: "B Ltd."
               },
               Price: 750000
           },
           {
               Client:
               {
                   Name: "C & D"
               },
               Price: 350000
           }
       ]
   },
   {
       Name: "Tony Anderson",
       Contract:
       [
           {
               Client:
               {
                   Name: "E Corp."
               },
               Price: 650000
           },
           {
               Client:
               {
                   Name: "F & Partners"
               },
               Price: 550000
           }
       ]
   },
]

Daha önce bahsettiğimiz adımları takip ederek Word belgesini JSON veri kaynağından kolaylıkla oluşturabiliriz. Ancak 2. adımda JSON veri kaynağını yüklemek ve kullanmak için JsonDataSource sınıfını kullanacağız.

Aşağıdaki kod örneği, Python’da JSON kullanılarak şablondan nasıl Word belgesi oluşturulacağını gösterir.

# Bu kod örneği, JSON veri kaynağını kullanarak bir Şablondan Word belgesinin nasıl oluşturulacağını gösterir.
# Şablonu yükle
doc = aw.Document("D:\\Files\\template-json.docx")

# Veri kaynağını yükleyin
data_source = aw.reporting.JsonDataSource("D:\\Files\\data-source.json")

# Raporlama motorunu başlat
engine = aw.reporting.ReportingEngine()
engine.build_report(doc, data_source, "managers");

# Belgeyi kaydet
doc.save("D:\\Files\\WordFromJSON.docx")

Çıktı

Python'da JSON Verilerini Kullanarak Şablondan Word Belgeleri Oluşturun

Python’da CSV Verileriyle Word Belgeleri Oluşturun

CSV’den Word belgesi oluşturmak için aşağıdaki Word şablonunu kullanacağız:

<<foreach [in persons]>>Name: <<[Column1]>>, Age: <<[Column2]>>, Date of Birth: <<[Column3]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<[persons.Average(p => p.Column2)]>>

Şablon aşağıdaki CSV verileriyle doldurulacaktır:

John Doe,30,1989-04-01 4:00:00 pm
Jane Doe,27,1992-01-31 07:00:00 am
John Smith,51,1968-03-08 1:00:00 pm

Artık daha önce bahsettiğimiz adımları takip ederek CSV veri kaynağından Word belgesini oluşturabiliriz. Ancak 2. adımda CSV veri kaynağını yüklemek ve kullanmak için CsvDataSource sınıfını kullanacağız.

Aşağıdaki kod örneği Python’da CSV veri kaynağından Word belgesinin nasıl oluşturulacağını gösterir.

# Bu kod örneği, JSON veri kaynağını kullanarak bir Şablondan Word belgesinin nasıl oluşturulacağını gösterir.
# Şablonu yükle
doc = aw.Document("D:\\Files\\template-csv.docx")

# Veri kaynağını yükleyin
data_source = aw.reporting.CsvDataSource("D:\\Files\\data-source.csv")

# Raporlama motorunu başlat
engine = aw.reporting.ReportingEngine()
engine.build_report(doc, data_source, "persons");

# Belgeyi kaydet
doc.save("D:\\Files\\WordFromCSV.docx")

Çıktı

Python'da CSV Verileriyle Word Belgeleri Oluşturun

Ücretsiz Lisans Alın

Ücretsiz bir geçici lisans alabilir ve değerlendirme sınırlamaları olmadan Word belgeleri oluşturabilirsiniz.

Python LINQ Raporlama Motoru - Devamını Okuyun

LINQ Raporlama Motoru, Python’da tam özellikli Word belgelerini dinamik olarak oluşturmak için çok çeşitli etiketleri destekler. Bu etiketler hakkında daha fazla bilgiyi sözdizimleriyle birlikte bu makale‘da okuyabilirsiniz.

Python Şablondan Word Belgesi Oluşturun – Ücretsiz Kaynaklar

Şablonlardan Word belgeleri oluşturmanın yanı sıra, aşağıdaki kaynakları kullanarak Word belgelerini oluşturma, değiştirme ve dönüştürme hakkında daha fazla bilgi edinin ve kitaplığın diğer çeşitli özelliklerini keşfedin:

Çözüm

Bu yazımızda Python’daki şablonlardan Word belgelerinin nasıl oluşturulacağını öğrendik. Ayrıca Word belgeleri oluşturmak için XML, JSON ve CSV veri kaynaklarının nasıl kullanılacağını da gördük. Aspose.Words for Python LINQ Raporlama Motorunu kullanarak çeşitli türlerde Word belgelerini kolayca oluşturabilirsiniz. Herhangi bir belirsizlik durumunda lütfen ücretsiz destek forumumuz üzerinden bizimle iletişime geçmekten çekinmeyin.

İlgili Makaleler