Python צור מסמך Word מתבנית

האם אתה מחפש דרך ליצור מסמכי Word מתבניות? הגעתם למקום הנכון! בפוסט זה בבלוג, נחקור את הפתרון הטוב ביותר להפקת מסמכי Word מתבניות באמצעות סוגים שונים של מקורות נתונים ב-Python. למד כיצד למנף תבניות מוגדרות מראש ליצירת מסמכי Word בפורמט DOCX על ידי אכלוס מצייני מיקום באמצעות מקורות נתונים שונים, כגון XML, JSON, או CSV.

מאמר זה עוסק בנושאים הבאים:

  1. ספריית פייתון ליצירת מסמכי Word מתבניות
  2. צור מסמכי Word מתבנית באמצעות נתוני XML
  3. צור מסמכי Word מתבנית באמצעות נתוני JSON
  4. צור מסמכי Word עם נתוני CSV ב-Python
  5. Python LINQ Reporting Engine
  6. משאבים בחינם

ספריית Python ליצירת מסמכי Word מתבניות

נשתמש ב-LINQ Reporting Engine של Aspose.Words for the Python API ליצירת מסמכי Word מתבניות. מנוע זה תומך בתגיות שונות עבור טקסט, תמונות, רשימות, טבלאות, היפר-קישורים וסימניות. אנו מאכלסים מסמכי Word הכוללים תגים אלו וממלאים אותם בנתונים ממקורות נתונים של XML, JSON או CSV. אז בואו נתחיל ליצור את מסמכי Word מהתבניות באמצעות Python.

התקנת Aspose.Words עבור Python

אתה יכול להוריד את החבילה או להתקין את ה-API מ-PyPI באמצעות פקודת ה-pip הבאה במסוף:

> pip install aspose-words

צור מסמכי Word מתבנית באמצעות נתוני XML ב- Python

להפקת מסמך Word מתבנית באמצעות מקור הנתונים XML, אנו זקוקים לקובץ תבנית ונתוני מקור XML. אנו ניצור מסמך Word (DOC/DOCX) עם מצייני המיקום הבאים כתוכן מסמך התבנית:

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

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

הנה מקור הנתונים ב-XML שבו נשתמש בדוגמה זו:

<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>

כעת, אנו יכולים ליצור בקלות מסמך Word ממקור נתונים XML על ידי ביצוע השלבים הבאים:

  1. טען את קובץ התבנית של Word באמצעות המחלקה Document.
  2. צור מופע של המחלקה XmlDataSource ואתחול אותו עם הנתיב של קובץ ה-XML.
  3. הפעלה של שיעור ReportingEngine.
  4. קרא למתודה ReportingEngine.BuildReport() עם התבנית, מקור הנתונים ושם מקור הנתונים.
  5. שמור את מסמך Word שנוצר באמצעות שיטת Document.Save() .

דוגמת הקוד הבאה מראה כיצד ליצור מסמך Word ממקור נתונים XML ב- Python.

# דוגמה זו מדגימה כיצד ליצור מסמך Word מתבנית באמצעות מקור נתונים XML.
# טען את התבנית
doc = aw.Document("D:\\Files\\template.docx")

# טען את מקור הנתונים
data_source = aw.reporting.XmlDataSource("D:\\Files\\data-source.xml")

# אתחול מנוע הדיווח
engine = aw.reporting.ReportingEngine()
engine.build_report(doc, data_source, "persons");

# שמור את המסמך
doc.save("D:\\Files\\WordFromXML.docx")

תְפוּקָה

צור מסמכי Word מתבנית באמצעות נתוני XML ב- Python

צור מסמכי Word מתבנית באמצעות JSON Data ב- Python

ליצירת מסמך Word באמצעות מקור נתונים של JSON, נשתמש בתבנית Word הבאה:

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

הבא יהיה מקור הנתונים של JSON שבו נשתמש כדי לאכלס את התבנית:

[
   {
       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
           }
       ]
   },
]

אנו יכולים ליצור בקלות את מסמך Word ממקור נתונים של JSON על ידי ביצוע השלבים שהוזכרו קודם לכן. עם זאת, נשתמש במחלקה JsonDataSource לטעינה ושימוש במקור הנתונים JSON בשלב 2.

דוגמת הקוד הבאה מראה כיצד ליצור מסמך Word מהתבנית באמצעות JSON ב- Python.

# דוגמה זו מדגימה כיצד ליצור מסמך Word מתבנית באמצעות מקור נתונים JSON.
# טען את התבנית
doc = aw.Document("D:\\Files\\template-json.docx")

# טען את מקור הנתונים
data_source = aw.reporting.JsonDataSource("D:\\Files\\data-source.json")

# אתחול מנוע הדיווח
engine = aw.reporting.ReportingEngine()
engine.build_report(doc, data_source, "managers");

# שמור את המסמך
doc.save("D:\\Files\\WordFromJSON.docx")

תְפוּקָה

צור מסמכי Word מתבנית באמצעות JSON Data ב- Python

צור מסמכי Word עם נתוני CSV ב-Python

ליצירת מסמך Word מ-CSV, נשתמש בתבנית Word הבאה:

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

התבנית תאוכלס בנתוני ה-CSV הבאים:

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

כעת, אנו יכולים ליצור את מסמך Word ממקור הנתונים של CSV על ידי ביצוע השלבים שהוזכרו קודם לכן. עם זאת, נשתמש במחלקה CsvDataSource לטעינה ושימוש במקור הנתונים של CSV בשלב 2.

דוגמת הקוד הבאה מראה כיצד ליצור מסמך Word ממקור נתונים CSV ב-Python.

# דוגמה זו מדגימה כיצד ליצור מסמך Word מתבנית באמצעות מקור נתונים JSON.
# טען את התבנית
doc = aw.Document("D:\\Files\\template-csv.docx")

# טען את מקור הנתונים
data_source = aw.reporting.CsvDataSource("D:\\Files\\data-source.csv")

# אתחול מנוע הדיווח
engine = aw.reporting.ReportingEngine()
engine.build_report(doc, data_source, "persons");

# שמור את המסמך
doc.save("D:\\Files\\WordFromCSV.docx")

תְפוּקָה

צור מסמכי Word עם נתוני CSV ב-Python

קבל רישיון חינם

אתה יכול לקבל רישיון זמני בחינם ולהפיק מסמכי Word ללא מגבלות הערכה.

Python LINQ Reporting Engine - קרא עוד

מנוע הדיווח של LINQ תומך במגוון רחב של תגים להפקת מסמכי Word עם תכונות מלאות באופן דינמי ב-Python. אתה יכול לקרוא עוד על תגים אלה, יחד עם התחביר שלהם, ב מאמר זה.

Python צור מסמך Word מתבנית - משאבים חינם

מלבד יצירת מסמכי Word מתבניות, למד עוד על יצירה, מניפולציה והמרה של מסמכי Word, וחקור תכונות שונות אחרות של הספרייה באמצעות המשאבים שלהלן:

סיכום

במאמר זה, למדנו כיצד ליצור מסמכי Word מתבניות ב- Python. ראינו גם כיצד להשתמש במקורות נתונים XML, JSON ו-CSV כדי ליצור מסמכי Word. על ידי מינוף Aspose.Words עבור Python LINQ Reporting Engine, אתה יכול ליצור בקלות סוגים שונים של מסמכי Word. בכל מקרה של אי בהירות, אנא אל תהסס לפנות אלינו בפורום התמיכה החינמי שלנו.

מאמרים קשורים