במאמר הבא אנו נסתכל על שקנאי. זוהי אפשרות טובה למשתמשי Python שרוצים לארח בעצמם אתר אינטרנט או בלוג פשוט. אם אתה מעוניין ליצור אתר או בלוג מותאם אישית, יש לך הרבה אפשרויות זמינות היום. אבל אם רק אתה רוצה לשרת דפי אינטרנט סטטיים, בונה אתרים סטטי זה עשוי להיות שימושי עבורך. יישומים מסוג זה משתמשים בתבניות כדי ליצור את כל הדפים הסטטיים שהמשתמש רוצה, ולקשר אותם עם המטא נתונים המשויכים.
אם אתה משתמש פיתון ואתה מחפש משהו להפקת דפי HTML סטטיים, הגנרטור הזה עומד לאפשר לך להסתכל על הפנימי של אופן הפעולה שלו. השימוש בשפה שאתה מכיר מקל עלייך. אם אתה לא אוהב את פייתון, ישנם מחוללי אתרים סטטיים אחרים שמשתמשים בשפות אחרות.
פליקן הוא מחולל אתרים סטטי נפוץ הכתוב בפייתון. מזרח תומך ישירות ReStructuredText ויכול לתמוך ב- Markdown, כאשר החבילה הנדרשת מותקנת. כל המשימות מתבצעות באמצעות כלי ממשק שורת פקודה (CLI), מה שהופך את זה פשוט לכל מי שמכיר את זה. בנוסף הכלי הפשוט המהיר שלו הופך את יצירת האתר לפשוטה ביותר.
התקנת שקנאי ותצורה בסיסית
אני בודק את התוכנית הזו באובונטו 20.04. השלב הראשון שיש לבצע יהיה ליצור א וירטואלי ולהתקין את פליקן. ניתן לעשות זאת על ידי פתיחת מסוף (Ctrl + Alt + T) ושימוש בפקודות בו:
mkdir test-sitio cd test-sitio python3.8 -m venv venv ./venv/bin/pip install --upgrade pip
לאחר עדכון הפיפ, אנו יכולים כעת להתקין את פליקן:
./venv/bin/pip install pelican
הפעל את הפקודה pelikan-quickstart
לאחר התקנתו, הכלי CLI התחלה מהירה של Pelican ייצור את הפריסה הבסיסית וכמה קבצים כדי שנוכל להתחיל.
כדי לשמור על דברים פשוטים, בעת הפעלת ההתחלה המהירה השתמשתי בערכים של הכותר והמחבר ועניתי N לקידומת כתובת האתר והעמודה של המאמר. לשאר השאלות, השתמשתי בברירת המחדל. קל מאוד לשנות הגדרות אלה בקובץ התצורה מאוחר יותר. ניתן להפעיל התחלה מהירה עם הפקודה:
./venv/bin/pelican-quickstart
בסיום, נוכל לשנות היבטים מסוימים של ההגדרות. אנחנו פשוט חייבים פתח את הקובץ pelicanconf.py בעורך הטקסט האהוב עלינו.
בפנים נוכל לחפש את השורה:
TIMEZONE = 'Europe/Paris'
ואנחנו יכולים שנה לאזור הזמן של המדינה שמעניינת אותך.
כדי עדכן את הגדרות הקישור החברתי, עליך לחפש את המשתנה חברתי en pelicancon.py. בו נוכל להוסיף את הקישורים שלנו כדלקמן:
SOCIAL = (('Twitter (#Ubunlog)', 'https://twitter.com/UbunlogWeb'),)
עליך לציין כי הפסיק בסוף הוא חשוב. פסיק זה עוזר לפייתון לזהות שהמשתנה הוא למעשה קבוצה. הקפד לא למחוק אותו.
הפעל את השרת
כעת, כשיש לנו את היסודות של אתר, אנו יכולים לראות שההתחלה המהירה יצרה Makefile עם מטרות שונות. אחד מהם מייצר devserver יכול להפעיל שרת פיתוח במכונה שלנו כדי שנוכל לצפות בתצוגה מקדימה של כל מה שאנו יוצרים. פקודות CLI המשמשות ב- Makefile אמורות להיות חלק מה- PATH שלנו, אז ראשית עלינו להפעיל את הוירטואלי.
source ./venv/bin/activate make devserver
כשהוא מתחיל, אנחנו יכולים פתח את הדפדפן שלנו ועבור לכתובת האתר http://localhost:8000 לראות את הבלוג שנוצר.
הוסף תוכן
כעת, כשיש לנו אתר בסיסי, נוכל להוסיף קצת תוכן. ראשון, ניצור קובץ שנקרא Welcome.rst בספריית התוכן (תוכן) של האתר.
עם עורך הטקסטים האהוב עלינו, ניצור קובץ זה עם טקסט העוקב אחר המבנה הבא:
Bienvenid@ a este blog ###################### :date: 20210827 00:03 :tags: bienvenid@ :category: Intro :slug: bienvenida :author: ubunlog :summary: Documento bienvenida Bienvenid@ a este blog de prueba con Pelican. Esta es una pequeña página se va a mostrar como página estática. Pelican analiza automáticamente las líneas de metadatos (fecha, etiquetas, etc.).
לאחר כתיבת הקובץ, שרת ה- devser צריך לעדכן ולייצר דבר כזה:
טען מחדש את אתר הבדיקה שלך בדפדפן כדי לראות את השינויים.
המטא נתונים נוספו אוטומטית לדף. מה עוד, פליקן זיהה אוטומטית את קטגוריית המבוא והוסיף את הקטע לניווט העליון.
שנה את הנושא
בנוסף לכל האמור לעיל, אנו יכולים לשנות את הנושא בקלות. במאגר נושאים של שקנאי, תוכל למצוא נושאים שונים שמשתמשים יצרו. קל מאוד לבדוק נושאים חדשים, אתה רק צריך להוריד אותם מהמאגר, שמור אותם במחשב שלנו ובקובץ pelicanconf.py הוסף את השורה הבאה עם הנתיב לנושא:
THEME = "/home/tu-usuario/pelican-tema/nombre-del-tema"
ה- devserver יחזיר את הפלט שלו. טען מחדש את דף האינטרנט בדפדפן כדי לראות את העיצוב החדש.
זו הייתה הקדמה קטנה ומהירה לפליקן. כל זה בוצע במכונה מקומית. אם אתה רוצה שאחרים יראו את האתר שלך, יהיה עליך להעלות את קבצי ה- HTML שנוצרו מראש לשרת. אם אתה מסתכל בפירוט על הפלט של התחלה מהירה של שקנאי, תראה אפשרויות לשימוש ב- FTP, SSH, S3 ואפילו בדפי GitHub.
זה יכול קבל מידע נוסף על הגנרטור הזה ב אתר הפרויקט או שלך מאגר GitHub.