האם ניתן להוריד את כל הפונטים מהאתר הזה.
-
זה אתר חינמי להורדת פונטים
הבעיה היא שאני צריך להיכנס לכל פונט כדי להוריד ולהזין את המספרים האלו
ואז אפשר להוריד
השאלה היא האם אפשר באיזו שהיא דרך להוריד את כולם בבת אחת ... ??? -
@אוריי אמר בהאם ניתן להוריד את כל הפונטים מהאתר הזה.:
ולהזין את המספרים האלו
אתה מבין שהחיוב להזין מספרים נועד בדיוק בשביל זה, למנוע מאנשים להוריד את הכל בצורה אוטומטית... זה נקרה קאפצ'ה בלע"ז.
-
@אוריי בתור התחלה, הנה קוד שמוריד את הפונטים שמופיעים בתוצאות החיפוש.
$('.center a b').each((i, e) => { const name = $(e).text(); const a = document.createElement('a'); a.href = `/download/${name}.ttf`; document.body.append(a); setTimeout(() => a.click(), i * 3000);})
בינתיים צורת השימוש הוא לעבור דף דף ולהדביק את זה בקונסול... אם יש לך דרך לקבל רשימה של כל הפונטים נוכל לשכלל את זה.
-
עדכון:
הנה סקריפט מלא, זה מוריד את כל הגופנים ומכניס אותם לקובץ זיפ. בסוף ההרצה הדפדפן תוריד קובץ זיפ שמכיל כל הפונטים. (אזהרה: זה יכול להשתמש בהמון זכרון ראם. ראו הזהרתם.)
(כנס לדף זה והכנס את הסקריפט לקונסול. חכה עד הגמר...)const numPages = parseInt($('.page-link').eq(-2).text()); for (let i = 2; i <= numPages; i++) { console.log(`Getting results page: ${i}`); const html = await fetch(`catetory.php?b=&key=%25%25&pg=${i}`).then(res => res.text()) const body = $.parseHTML(html); $(document.body).append(body) } const fonts = $('.center a b').toArray(); console.log(`${fonts.length} fonts`); await import('https://cdnjs.cloudflare.com/ajax/libs/jszip/3.6.0/jszip.min.js'); let zip = new JSZip(); for (const [i, font] of fonts.entries()) { const name = $(font).text(); console.log(`Downloading ${name}. Font ${i + 1} of ${fonts.length}.`) const arrayBuffer = await fetch(`/download/${encodeURIComponent(name)}.ttf`).then(res => res.arrayBuffer()); zip.file(name + ' - (' + i + ').ttf', arrayBuffer); } const zipFile = await zip.generateAsync({ type: "blob" }); const url = URL.createObjectURL(zipFile); const a = document.createElement('a'); a.href = url; a.download = `fonts.zip`; document.body.appendChild(a); a.click(); delete zip
-
@אוריי בתור התחלה, הנה קוד שמוריד את הפונטים שמופיעים בתוצאות החיפוש.
$('.center a b').each((i, e) => { const name = $(e).text(); const a = document.createElement('a'); a.href = `/download/${name}.ttf`; document.body.append(a); setTimeout(() => a.click(), i * 3000);})
בינתיים צורת השימוש הוא לעבור דף דף ולהדביק את זה בקונסול... אם יש לך דרך לקבל רשימה של כל הפונטים נוכל לשכלל את זה.
@yossiz
הקישור הזה מביא את דף מספר737350
https://www.hebrewfont.net/download.php?id=737350
שמתי לב שאם מחפשים את מספר הדף הוא מביא את הפונט של הדף הנוכחי
דבר שני מבדיקה ממדגם שעשיתי בכ20 פונטים כל הדפים של הפונטים מתחילים במס'737
כך שנשאר להריץ מ373000
עד737999
וכך לקבל את כל הפונטים -
@yossiz
הקישור הזה מביא את דף מספר737350
https://www.hebrewfont.net/download.php?id=737350
שמתי לב שאם מחפשים את מספר הדף הוא מביא את הפונט של הדף הנוכחי
דבר שני מבדיקה ממדגם שעשיתי בכ20 פונטים כל הדפים של הפונטים מתחילים במס'737
כך שנשאר להריץ מ373000
עד737999
וכך לקבל את כל הפונטים -
עדכון:
הנה סקריפט מלא, זה מוריד את כל הגופנים ומכניס אותם לקובץ זיפ. בסוף ההרצה הדפדפן תוריד קובץ זיפ שמכיל כל הפונטים. (אזהרה: זה יכול להשתמש בהמון זכרון ראם. ראו הזהרתם.)
(כנס לדף זה והכנס את הסקריפט לקונסול. חכה עד הגמר...)const numPages = parseInt($('.page-link').eq(-2).text()); for (let i = 2; i <= numPages; i++) { console.log(`Getting results page: ${i}`); const html = await fetch(`catetory.php?b=&key=%25%25&pg=${i}`).then(res => res.text()) const body = $.parseHTML(html); $(document.body).append(body) } const fonts = $('.center a b').toArray(); console.log(`${fonts.length} fonts`); await import('https://cdnjs.cloudflare.com/ajax/libs/jszip/3.6.0/jszip.min.js'); let zip = new JSZip(); for (const [i, font] of fonts.entries()) { const name = $(font).text(); console.log(`Downloading ${name}. Font ${i + 1} of ${fonts.length}.`) const arrayBuffer = await fetch(`/download/${encodeURIComponent(name)}.ttf`).then(res => res.arrayBuffer()); zip.file(name + ' - (' + i + ').ttf', arrayBuffer); } const zipFile = await zip.generateAsync({ type: "blob" }); const url = URL.createObjectURL(zipFile); const a = document.createElement('a'); a.href = url; a.download = `fonts.zip`; document.body.appendChild(a); a.click(); delete zip
-
@yossiz
הרבה תודה עובד מעולה
הוריד לי 249 פונטים
אני מנסה לתאר לעצמי מה היה קורה אם הייתי נכנס דף דף -
@אוריי אמר בהאם ניתן להוריד את כל הפונטים מהאתר הזה.:
הוריד לי 249 פונטים
יש 406 תוצאות
הבעיה היא שחלק מהם הם כפילויות של אותו שם.
תיקנתי את הסקריפט למעלה שיוריד את כולם גם אם יש כפילות. תריץ שוב. -
@yossiz
הוא מחזיר לי שגיאה
Uncaught SyntaxError: Identifier 'numPages' has already been declared
-
@אוריי אמר בהאם ניתן להוריד את כל הפונטים מהאתר הזה.:
@yossiz
יש לי בעיה שהתקנתי קודם חלק מהפונטים
יש אפשרות להסיר את מה שהתקנתי עכשיו?כשתתקין הוא ישאל אותך אם להתקין את הפונטים מחדש
-
@אוריי אמר בהאם ניתן להוריד את כל הפונטים מהאתר הזה.:
@זעירא אבל @yossiz שינה את השמות שלהם בהורדה כך שנראה לי שהוא לא יזהה אותם ויתקין פעמיים
סליחה עכשיו הבנתי לאיזה תיקון הוא התכוון
הבעיה היא שחלק מהם הם כפילויות של אותו שם.
תיקנתי את הסקריפט למעלה שיוריד את כולם גם אם יש כפילות. תריץ שוב.
אגב: תוכל לשלוח לי את הקבצים למייל nesifoev@gmail.com תודה מראש!
-
@אוריי אמר בהאם ניתן להוריד את כל הפונטים מהאתר הזה.:
@זעירא אבל @yossiz שינה את השמות שלהם בהורדה כך שנראה לי שהוא לא יזהה אותם ויתקין פעמיים
סליחה עכשיו הבנתי לאיזה תיקון הוא התכוון
הבעיה היא שחלק מהם הם כפילויות של אותו שם.
תיקנתי את הסקריפט למעלה שיוריד את כולם גם אם יש כפילות. תריץ שוב.
אגב: תוכל לשלוח לי את הקבצים למייל nesifoev@gmail.com תודה מראש!