מדריך | מדריך ליצירת קבצי zim
-
מכיוון שכמה בקשו אני אכתוב את המדריך הראשון שלי..
המדריך בסיסי עם זאת אשתדל להיות מובן.המדריך נוצר מ xubuntu ואמור להתאים לכלל הפצות ubuntu,
ולכאורה גם למבוססות debian, עם זאת אני ממליץ על ubuntu.נקדים:
כל מקום שהפקודה תתחיל ב sudo יכול להיות שתדרשו להקיש סיסמא
כל מקום שבתהליך ההתקנה או הסרה תשאלו y/n? תקישו y
כל מקום שההתקנה עם install תוכלו להסיר עם אותה פקודה רק להחליף install ל- removeהמדריך יחולק לשני חלקים:
החלק הראשון - מדריך ליצירת zim מאתר mediawiki
החלק השני - הורדת אתר שאינו mediawiki ויצירתו ל zim..
.
.החלק הראשון - מדריך ליצירת zim מאתר mediawiki:
הדרך הטובה ביותר לעשות את זה עם תוכנת mwoffliner
mwoffliner מפוצת בעיקר באמצעות npm ו docker (יש אופציה למפתחים דרך git)
ההתקנה שלה דרך npm נכשלת ב ubuntu לכן אנחנו נשתמש ב docker.בואו נתחיל.
פתחו מסוף.עדכון מנהל חבילות
sudo apt update
התקנת docker
sudo apt install docker.io
התקנת mwpffliner על docker
sudo docker pull openzim/mwoffliner
פתיחה של דף האופציות של mwpffliner שימו לב שכל פתיחה כזו יוצרת container
sudo docker run openzim/mwoffliner mwoffliner --help
יצירת תחביר בסיסי לאתר wiki רגיל (בדרך כלל כל אתר שאחרי כתובת הבסיס של באתר יש /wiki)
מצריך רק 2 דרישות כתובת אתר ומייל זה נראה כך:sudo docker run openzim/mwoffliner mwoffliner --mwUrl=https://en.wikipedia.org/ --adminEmail=foo@bar.net
לאתר mediawiki פחות נפוץ (אתר שאחרי כתובת הבסיס שלו אין מיד /wiki)
יש עוד 3 דרישות שעלולות להשתנות בויקיסוגיה זה נראה כך:sudo docker run openzim/mwoffliner mwoffliner --mwUrl="https://www.betmidrash.org.il/" --adminEmail="0361301@gmail.com" --mwWikiPath="" --mwApiPath="api.php" --mwModulePath="load.php"
במדה ויהיה משתנה ל 3 האופציות הנוספות, תוכלו להבין אותו עם מעט התבוננות בקוד המקור של דף הבית של האתר. (בדרך כלל זה צריך להראות איך שכתבתי).
עם זאת מי שרוצה zim טוב יותר כדאי לו לעבור על כל האופציות שנפתחו ב --help ולהגדיר לפי מה שהוא רוצה/צריך ולא להסתמך על ברירת מחדל.
עכשיו נראה את כל ה container שיצרנו עד כה
sudo docker container ls -a
אם יצרנו את ה zim עכשיו ולא יצרנו עוד container הוא צריך להיות ה container האחרון שהוא העליון ברשימה. תעתיקו את ה ID שלו ותחליפו עם ה ID שרשמתי בפקודה הבאה.
כברירת מחדל ה zim נמצא בספרייה (תקייה) בשם out עכשיו נעתיק את הספרייה עם ה zim מה container ונעתיק אותה לספריית הבית
sudo docker cp 8826d52428f4:/out ~/
ה zim נמצא בספריית הבית בספרייה בשם out.
ממליץ יותר לעשות את זה כך:sudo docker cp 8826d52428f4:/out ~/ ; sudo cp out/*.zim ~/ ; sudo rm -rf out
זהו ה zim נמצא בספריית הבית.
סיימנו את החלק הראשון..
.
.החלק השני - הורדת אתר שאינו mediawiki ויצירתו ל zim.
החלק השני פשוט יותר מהחלק הראשון
אפשר להוריד את האתר בכל כלי שמוריד אתרים ואפשר לעשות אותה גם ב win עם httrack ו IDM
הסיבה שלא משתמשים באופציה הזאת ל mediawiki כי הכלים האלו לא מותאמים לעבוד עם ממשק mediawiki ויוצרים בעיות עיצוב קשות בהורדת mediawiki.ב linox אפשר להוריד אתרים עם wget.
אני גם ב linox מעדיף את httrack.התקנת httrack
sudo apt install httrack
להורדת אתר בסיסית:
httrack
הקלידו שם לפרוייקט ואינטר
הקלידו נתיב. אם תדלגו ברירת המחדל תהיה בספריית הבית בספרייה בשם websites. אינטר.
כתובת אתר. אינטר.
1 ו אינטר.
אינטר.
אינטר.
אינטר.
y ואינטר.זהו.
עכשיו ניצור zim מהאתר שהורדנו עם כלי בשם zimwriterfs.
התקנת zimwriterfs
sudo apt install zim-tools
אפשר גם עם
sudo apt install zimwriterfs
עכשיו נפתח את דף האופציות
zimwriterfs
התחביר הבסיסי נראה כך:
zimwriterfs --welcome=index.html --illustration=illustration.png --language=heb --title=foobar --description=mydescription \ --creator=Wikipedia --publisher=Kiwix /my_project_html_directory my_project.zim
--welcome= תקלידו את שם דף הבית.
--illustration= שם התמונה שתוצמד ל ZIM היא צריכה להיות בוגדל 48 על 48 פיקסל (או פחות)
--language= לעברית צריך heb
--title= כותרת
--description= כאן תכתבו כל מה שתרצו שיראו בשורה שמתחת ל zim בתוכנה, אם אתם כותבים כמה מילים תעשו " לפני ו " אחרי ותשדלו לא להכניס תווים שאינכם מבינים את משמעותם כגון ' ( ) & !
--creator= ו --publisher= כמדומני לא רואים אותם בכלל בתוכנה כך שלא משנה מה תכתבו שם , אבל הם חובה.
/my_project_html_directory היא הנתיב הספרייה של האתר אותה אנו רוצים לסגור ל zim
ו my_project.zim הוא שם ה zim אם לא תוסיפו נתיב הוא יווצר בספריית הביתשימו לב!
--welcome ו -illustration צריכים להיות יחסיות לנתיב הספרייה אותה אנו סוגרים
קצת קשה להסביר את זה אבל ניתן דוגמה
עם שם קובץ ה --welcome הוא "D" והוא נמצא ב נתיב A/B/C
והספרייה שאנו סוגרים ל zim היא B
אז במקום /my_project_html_directory נכתוב A/B שזו הספרייה שאנו סוגרים
ובמקום --welcome=index.html נכתוב welcome=C/D
מקווה שהובנתי.אם הורדתם מ win תקלידו (או תעתיקו) את הנתיב של התקייה ב win כפי ההוראות הנ"ל.
זהו נגמר (סוף סוף!) כמה זמן זה לוקח...
ולסיום,
נ נח נחמ נחמן מאומן
-
השלמתי את החלק השני. @HGECHGECHGEC מדריך יותר מפורט, בהצלחה!
-
@EEE אמר במדריך | מדריך ליצירת קבצי zim:
השלמתי את החלק השני. @HGECHGECHGEC מדריך יותר מפורט, בהצלחה!
ראשית המדריך מעורר התפעלות, גם מהידע בלינוקס ובטרמינל ובשאר הפקודות השונות, והאמת שבעיקר התפעלתי מכך שאדם שיודע כל כך הרבה טרח להכין את הויקי טקסט המסונן עבורנו ולא התעסק בענינים חשובים יותר...
לצערי למרות הידע שלי בתיכנות עדיין בלינוקס פחות התעסקתי, אבל מכל דבריך אני מבין שלאדם ממוצע שמתעסק בעיקר עם GUI אין הרבה מה לעשות...
אבל תודה מאוד על המדריך המפורט ללא ספק אם יש דרך להבין את זה טוב, זה עם המדריך שלך שמסביר מפורט צעד אחר צעד.
ועכשיו אסיים בדיחה קטנה:
איפה אני שם את הפקודה
נ נח נחמ נחמן מאומן -
@HGECHGECHGEC לכאורה אפשר לעשות את זה אותו דבר בדיוק גם בווינדוס כיוון שזה רץ על דוקר
https://www.docker.com/products/docker-desktop -
@HGECHGECHGEC אמר במדריך | מדריך ליצירת קבצי zim:
איפה אני שם את הפקודה
נ נח נחמ נחמן מאומןעל הכיפה לא שאני הולך עם אחת כזו..
@צדיק-תמים אמר במדריך | מדריך ליצירת קבצי zim:
@HGECHGECHGEC לכאורה אפשר לעשות את זה אותו דבר בדיוק גם בווינדוס כיוון שזה רץ על דוקר
https://www.docker.com/products/docker-desktopככה גם לי נראה. פשוט אין לי נסיון..
אם משהו ינסה וילך יהיה טוב שישתף.נ.ב. התבאסתי קצת מה ZIM של ויקיטקסט אולי אני ינסה בדרך אחרת ואכמ"ל.
-
@צדיק-תמים אמר במדריך | מדריך ליצירת קבצי zim:
@HGECHGECHGEC לכאורה אפשר לעשות את זה אותו דבר בדיוק גם בווינדוס כיוון שזה רץ על דוקר
https://www.docker.com/products/docker-desktopאני מסכים איתך באופן כללי
אבל זה לא שווה לי את הטירחא, להוריד אתר כיום יש חמישים דרכים, ויש לי כמה שמוצלחים מאוד, אבל אז יש לך המון קבצים וזה לא נוח, וקובץ ZIM פותר את הבעיה.
אבל אני לא הולך להשקיע המון זמן, חשבתי שיש תוכנה שתקבל את הנתיב של הקובץ של דף הבית ותעשה לבד את שאר העבודה, אם אין אני חוזר לרעיון הישן שלי, אני שם את הכל בקובץ ISO וזהו
בכל מקרה תודה מאוד
יום אחד אני ישב ללמוד את הנושא -
@HGECHGECHGEC לפרוטוקול לא יהיה כל כך קשה להכין קובץ BASH כזה..
-
פוסט זה נמחק!
-
@למה-מה-קרה לא התעסקתי עם זה. מעדיף בכללי לא להתעסק עם zim המכלול של kiwix.
-
-
-