שיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית
-
https://mitmachim.top/topic/87152/
@NH.LOCAL @צדיק-תמים
ניתן גם ליצור סימניה בכרום
פותח דיאלוג עם העתקה והורדהjavascript:(async()=>{const downloadJSON=(d,f)=>{const j=JSON.stringify(d,null,2);const b=new Blob([j],{type:"application/json"});const u=URL.createObjectURL(b);const a=document.createElement("a");a.href=u;a.download=f;document.body.appendChild(a);a.click();document.body.removeChild(a);URL.revokeObjectURL(u)};const copyJSON=async d=>{const j=JSON.stringify(d,null,2);try{await navigator.clipboard.writeText(j);alert("✅ הטקסט הועתק ללוח")}catch(e){console.error("שגיאה בהעתקה",e);alert("❌ נכשל בהעתקה ללוח")}};try{if(!window.ajaxify||!window.ajaxify.data.tid){alert("נראה שאתה לא בעמוד של נושא (topic). יש להפעיל את הסימניה מעמוד נושא תקין.");return}const t=window.ajaxify.data.tid;const s=(window.ajaxify.data.title||"topic").replace(/[^a-z0-9]/gi,"_").toLowerCase();const f=`topic_${t}_${s}.json`;const p=await fetch(`/api/topic/pagination/${t}`).then(r=>r.json());const c=p.pagination.pageCount;const ap=Array.from({length:c},(_,i)=>i+1).map(pg=>fetch(`/api/topic/${t}?page=${pg}`).then(r=>r.json()).then(d=>d.posts));const apg=await Promise.all(ap);const posts=apg.flat();const dlg=document.createElement("div");dlg.style="position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:16px;padding:24px;z-index:999999;width:320px;max-width:90%;text-align:center;font-family:Arial,sans-serif;box-shadow:0 8px 24px rgba(0,0,0,0.25);";dlg.innerHTML=`<h3 style="margin-top:0;color:#333;font-size:18px;">שמירת נתוני הנושא</h3><p style="font-size:14px;color:#555;word-break:break-word;">${f}</p><div style="display:flex;gap:10px;justify-content:center;margin-top:16px;"><button id="btnDownload" style="flex:1;padding:10px;border:none;border-radius:8px;background:#4CAF50;color:#fff;cursor:pointer;font-size:14px;">⬇️ הורדה</button><button id="btnCopy" style="flex:1;padding:10px;border:none;border-radius:8px;background:#2196F3;color:#fff;cursor:pointer;font-size:14px;">📋 העתקה</button></div><button id="btnClose" style="margin-top:14px;padding:8px 16px;border:none;border-radius:8px;background:#f44336;color:#fff;cursor:pointer;font-size:13px;">❌ סגור</button>`;document.body.appendChild(dlg);dlg.querySelector("#btnDownload").onclick=()=>{downloadJSON(posts,f);document.body.removeChild(dlg)};dlg.querySelector("#btnCopy").onclick=()=>{copyJSON(posts);document.body.removeChild(dlg)};dlg.querySelector("#btnClose").onclick=()=>{document.body.removeChild(dlg)}}catch(e){console.error("אירעה שגיאה במהלך איסוף הפוסטים:",e);alert("אירעה שגיאה. בדוק את חלון המפתחים (F12) לפרטים נוספים.")}})();
javascript:(async () => { /* Helper function to trigger file download */ const downloadJSON = (data, filename) => { const jsonStr = JSON.stringify(data, null, 2); const blob = new Blob([jsonStr], { type: 'application/json' }); const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = filename; document.body.appendChild(a); a.click(); document.body.removeChild(a); URL.revokeObjectURL(url); }; try { if (!window.ajaxify || !window.ajaxify.data.tid) { alert('נראה שאתה לא בעמוד של נושא (topic). יש להפעיל את הסימניה מעמוד נושא תקין.'); return; } const tid = window.ajaxify.data.tid; const safeTitle = (window.ajaxify.data.title || 'topic').replace(/[^a-z0-9]/gi, '_').toLowerCase(); const filename = `topic_${tid}_${safeTitle}.json`; alert(`מתחיל איסוף פוסטים מנושא מספר ${tid}. בסיום התהליך, תתחיל הורדת קובץ בשם:\n${filename}`); /* Steps 1 & 2: Fetch all posts from all pages */ const pagination = await fetch(`/api/topic/pagination/${tid}`).then(res => res.json()); const pageCount = pagination.pagination.pageCount; const allPagePromises = Array.from({ length: pageCount }, (_, i) => i + 1) .map(page => fetch(`/api/topic/${tid}?page=${page}`) .then(res => res.json()) .then(data => data.posts) ); /* Step 3: Wait for all promises and flatten the result */ const allPages = await Promise.all(allPagePromises); const posts = allPages.flat(); /* Step 4: Download the collected data as a JSON file */ downloadJSON(posts, filename); } catch (error) { console.error('אירעה שגיאה במהלך איסוף הפוסטים:', error); alert('אירעה שגיאה. בדוק את חלון המפתחים (F12) לפרטים נוספים.'); } })();
זה להעתקה
javascript:(async () => { try { if (!window.ajaxify || !window.ajaxify.data.tid) { alert('נראה שאתה לא בעמוד של נושא (topic). יש להפעיל את הסימניה מעמוד נושא תקין.'); return; } const tid = window.ajaxify.data.tid; alert(`מתחיל איסוף פוסטים מנושא מספר ${tid}. בסיום, התוכן יועתק אוטומטית ללוח.`); /* Steps 1 & 2: Fetch all posts from all pages */ const pagination = await fetch(`/api/topic/pagination/${tid}`).then(res => res.json()); const pageCount = pagination.pagination.pageCount; const allPagePromises = Array.from({ length: pageCount }, (_, i) => i + 1) .map(page => fetch(`/api/topic/${tid}?page=${page}`) .then(res => res.json()) .then(data => data.posts) ); /* Step 3: Wait for all promises and flatten the result */ const allPages = await Promise.all(allPagePromises); const posts = allPages.flat(); /* Step 4: Convert to JSON string and copy to clipboard */ const jsonStr = JSON.stringify(posts, null, 2); await navigator.clipboard.writeText(jsonStr); alert(`איסוף הושלם! ${posts.length} פוסטים הועתקו ללוח כטקסט JSON.\nכעת ניתן להדביק (Ctrl+V) אותם בכל מקום.`); } catch (error) { console.error('אירעה שגיאה:', error); alert('אירעה שגיאה. ייתכן שההעתקה ללוח נכשלה. בדוק את חלון המפתחים (F12) לפרטים.'); } })();
-
https://mitmachim.top/topic/87152/
@NH.LOCAL @צדיק-תמים
ניתן גם ליצור סימניה בכרום
פותח דיאלוג עם העתקה והורדהjavascript:(async()=>{const downloadJSON=(d,f)=>{const j=JSON.stringify(d,null,2);const b=new Blob([j],{type:"application/json"});const u=URL.createObjectURL(b);const a=document.createElement("a");a.href=u;a.download=f;document.body.appendChild(a);a.click();document.body.removeChild(a);URL.revokeObjectURL(u)};const copyJSON=async d=>{const j=JSON.stringify(d,null,2);try{await navigator.clipboard.writeText(j);alert("✅ הטקסט הועתק ללוח")}catch(e){console.error("שגיאה בהעתקה",e);alert("❌ נכשל בהעתקה ללוח")}};try{if(!window.ajaxify||!window.ajaxify.data.tid){alert("נראה שאתה לא בעמוד של נושא (topic). יש להפעיל את הסימניה מעמוד נושא תקין.");return}const t=window.ajaxify.data.tid;const s=(window.ajaxify.data.title||"topic").replace(/[^a-z0-9]/gi,"_").toLowerCase();const f=`topic_${t}_${s}.json`;const p=await fetch(`/api/topic/pagination/${t}`).then(r=>r.json());const c=p.pagination.pageCount;const ap=Array.from({length:c},(_,i)=>i+1).map(pg=>fetch(`/api/topic/${t}?page=${pg}`).then(r=>r.json()).then(d=>d.posts));const apg=await Promise.all(ap);const posts=apg.flat();const dlg=document.createElement("div");dlg.style="position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:16px;padding:24px;z-index:999999;width:320px;max-width:90%;text-align:center;font-family:Arial,sans-serif;box-shadow:0 8px 24px rgba(0,0,0,0.25);";dlg.innerHTML=`<h3 style="margin-top:0;color:#333;font-size:18px;">שמירת נתוני הנושא</h3><p style="font-size:14px;color:#555;word-break:break-word;">${f}</p><div style="display:flex;gap:10px;justify-content:center;margin-top:16px;"><button id="btnDownload" style="flex:1;padding:10px;border:none;border-radius:8px;background:#4CAF50;color:#fff;cursor:pointer;font-size:14px;">⬇️ הורדה</button><button id="btnCopy" style="flex:1;padding:10px;border:none;border-radius:8px;background:#2196F3;color:#fff;cursor:pointer;font-size:14px;">📋 העתקה</button></div><button id="btnClose" style="margin-top:14px;padding:8px 16px;border:none;border-radius:8px;background:#f44336;color:#fff;cursor:pointer;font-size:13px;">❌ סגור</button>`;document.body.appendChild(dlg);dlg.querySelector("#btnDownload").onclick=()=>{downloadJSON(posts,f);document.body.removeChild(dlg)};dlg.querySelector("#btnCopy").onclick=()=>{copyJSON(posts);document.body.removeChild(dlg)};dlg.querySelector("#btnClose").onclick=()=>{document.body.removeChild(dlg)}}catch(e){console.error("אירעה שגיאה במהלך איסוף הפוסטים:",e);alert("אירעה שגיאה. בדוק את חלון המפתחים (F12) לפרטים נוספים.")}})();
javascript:(async () => { /* Helper function to trigger file download */ const downloadJSON = (data, filename) => { const jsonStr = JSON.stringify(data, null, 2); const blob = new Blob([jsonStr], { type: 'application/json' }); const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = filename; document.body.appendChild(a); a.click(); document.body.removeChild(a); URL.revokeObjectURL(url); }; try { if (!window.ajaxify || !window.ajaxify.data.tid) { alert('נראה שאתה לא בעמוד של נושא (topic). יש להפעיל את הסימניה מעמוד נושא תקין.'); return; } const tid = window.ajaxify.data.tid; const safeTitle = (window.ajaxify.data.title || 'topic').replace(/[^a-z0-9]/gi, '_').toLowerCase(); const filename = `topic_${tid}_${safeTitle}.json`; alert(`מתחיל איסוף פוסטים מנושא מספר ${tid}. בסיום התהליך, תתחיל הורדת קובץ בשם:\n${filename}`); /* Steps 1 & 2: Fetch all posts from all pages */ const pagination = await fetch(`/api/topic/pagination/${tid}`).then(res => res.json()); const pageCount = pagination.pagination.pageCount; const allPagePromises = Array.from({ length: pageCount }, (_, i) => i + 1) .map(page => fetch(`/api/topic/${tid}?page=${page}`) .then(res => res.json()) .then(data => data.posts) ); /* Step 3: Wait for all promises and flatten the result */ const allPages = await Promise.all(allPagePromises); const posts = allPages.flat(); /* Step 4: Download the collected data as a JSON file */ downloadJSON(posts, filename); } catch (error) { console.error('אירעה שגיאה במהלך איסוף הפוסטים:', error); alert('אירעה שגיאה. בדוק את חלון המפתחים (F12) לפרטים נוספים.'); } })();
זה להעתקה
javascript:(async () => { try { if (!window.ajaxify || !window.ajaxify.data.tid) { alert('נראה שאתה לא בעמוד של נושא (topic). יש להפעיל את הסימניה מעמוד נושא תקין.'); return; } const tid = window.ajaxify.data.tid; alert(`מתחיל איסוף פוסטים מנושא מספר ${tid}. בסיום, התוכן יועתק אוטומטית ללוח.`); /* Steps 1 & 2: Fetch all posts from all pages */ const pagination = await fetch(`/api/topic/pagination/${tid}`).then(res => res.json()); const pageCount = pagination.pagination.pageCount; const allPagePromises = Array.from({ length: pageCount }, (_, i) => i + 1) .map(page => fetch(`/api/topic/${tid}?page=${page}`) .then(res => res.json()) .then(data => data.posts) ); /* Step 3: Wait for all promises and flatten the result */ const allPages = await Promise.all(allPagePromises); const posts = allPages.flat(); /* Step 4: Convert to JSON string and copy to clipboard */ const jsonStr = JSON.stringify(posts, null, 2); await navigator.clipboard.writeText(jsonStr); alert(`איסוף הושלם! ${posts.length} פוסטים הועתקו ללוח כטקסט JSON.\nכעת ניתן להדביק (Ctrl+V) אותם בכל מקום.`); } catch (error) { console.error('אירעה שגיאה:', error); alert('אירעה שגיאה. ייתכן שההעתקה ללוח נכשלה. בדוק את חלון המפתחים (F12) לפרטים.'); } })();
@יום_שמח עדכנתי כעת את התוסף שלי בהתאם לדוגמה שלך.
עקרונית סימניה הרבה יותר נוחה, הבעיה העיקרית היא גודל הפלט האדיר שמתקבל מה-API
כדי להפוך את הפלט שמתקבל לשימושי, התוסף כולל המרה של התוכן מה-API לפורמט json משולב MD, והסרה של כל תוכן לא רלוונטי. התוסף המעודכן מקטין את גודל הפלט עד פי 10 מהיקף התוכן המקורי המתקבל מה-API
ניסיתי להשתמש בסימניה שלך עבור השרשור הזה (באורך כולל של 388 פוסטים), העלתי את הקובץ שהורד ל-AI Studio, וספירת האסימונים עמדה על 559,430 טוקנים!
עם התוסף המעודכן שלי עבור אותו שרשור בדיוק, הגעתי ל-65,597 טוקנים בלבד. גם ארוך, אבל הרבה יותר סביר.
זה מתבטא גם בגודל הקובץ - 1.3 MB (ענק במושגי AI) לעומת 154 KB בלבד
-
@יום_שמח עדכנתי כעת את התוסף שלי בהתאם לדוגמה שלך.
עקרונית סימניה הרבה יותר נוחה, הבעיה העיקרית היא גודל הפלט האדיר שמתקבל מה-API
כדי להפוך את הפלט שמתקבל לשימושי, התוסף כולל המרה של התוכן מה-API לפורמט json משולב MD, והסרה של כל תוכן לא רלוונטי. התוסף המעודכן מקטין את גודל הפלט עד פי 10 מהיקף התוכן המקורי המתקבל מה-API
ניסיתי להשתמש בסימניה שלך עבור השרשור הזה (באורך כולל של 388 פוסטים), העלתי את הקובץ שהורד ל-AI Studio, וספירת האסימונים עמדה על 559,430 טוקנים!
עם התוסף המעודכן שלי עבור אותו שרשור בדיוק, הגעתי ל-65,597 טוקנים בלבד. גם ארוך, אבל הרבה יותר סביר.
זה מתבטא גם בגודל הקובץ - 1.3 MB (ענק במושגי AI) לעומת 154 KB בלבד
@NH.LOCAL כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח עדכנתי כעת את התוסף שלי בהתאם לדוגמה שלך.
עקרונית סימניה הרבה יותר נוחה, הבעיה העיקרית היא גודל הפלט האדיר שמתקבל מה-API
כדי להפוך את הפלט שמתקבל לשימושי, התוסף כולל המרה של התוכן מה-API לפורמט json משולב MD, והסרה של כל תוכן לא רלוונטי. התוסף המעודכן מקטין את גודל הפלט עד פי 10 מהיקף התוכן המקורי המתקבל מה-API
ניסיתי להשתמש בסימניה שלך עבור השרשור הזה (באורך כולל של 388 פוסטים), העלתי את הקובץ שהורד ל-AI Studio, וספירת האסימונים עמדה על 559,430 טוקנים!
עם התוסף המעודכן שלי עבור אותו שרשור בדיוק, הגעתי ל-65,597 טוקנים בלבד. גם ארוך, אבל הרבה יותר סביר.
זה מתבטא גם בגודל הקובץ - 1.3 MB (ענק במושגי AI) לעומת 154 KB בלבד
אני מאמין שאפשר לסנן שדות ומערכים ולהסיר
-
@אהרן כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח
מדהים.
אשמח לכזה גם לפורום פרוג.אני לא יודע כמה אפשרי בפרוג
זה עובד אחרת
לא יודע איך להסביר
אולי המומחים יידעו@יום_שמח כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@אהרן כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח
מדהים.
אשמח לכזה גם לפורום פרוג.אני לא יודע כמה אפשרי בפרוג
זה עובד אחרתזה עובד על XENFORO
לא יודע איך להסביר
אולי המומחים יידעואני באמצע לנסות על פרוג, אבל זה כל הזמן נכשל מבעיות אבטחה והרשאות, נראה אם ייצא מזה משהו בסוף..
-
@יום_שמח כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@אהרן כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח
מדהים.
אשמח לכזה גם לפורום פרוג.אני לא יודע כמה אפשרי בפרוג
זה עובד אחרתזה עובד על XENFORO
לא יודע איך להסביר
אולי המומחים יידעואני באמצע לנסות על פרוג, אבל זה כל הזמן נכשל מבעיות אבטחה והרשאות, נראה אם ייצא מזה משהו בסוף..
@ע-ה-דכו-ע כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@אהרן כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח
מדהים.
אשמח לכזה גם לפורום פרוג.אני לא יודע כמה אפשרי בפרוג
זה עובד אחרתזה עובד על XENFORO
לא יודע איך להסביר
אולי המומחים יידעואני באמצע לנסות על פרוג, אבל זה כל הזמן נכשל מבעיות אבטחה והרשאות, נראה אם ייצא מזה משהו בסוף..
שם הדף מגיע מוכן בhtml
ניסיתי ליצור לזה תוסף והיה לי מורכב -
@ע-ה-דכו-ע כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@אהרן כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח
מדהים.
אשמח לכזה גם לפורום פרוג.אני לא יודע כמה אפשרי בפרוג
זה עובד אחרתזה עובד על XENFORO
לא יודע איך להסביר
אולי המומחים יידעואני באמצע לנסות על פרוג, אבל זה כל הזמן נכשל מבעיות אבטחה והרשאות, נראה אם ייצא מזה משהו בסוף..
שם הדף מגיע מוכן בhtml
ניסיתי ליצור לזה תוסף והיה לי מורכב@יום_שמח כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@ע-ה-דכו-ע כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@אהרן כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח
מדהים.
אשמח לכזה גם לפורום פרוג.אני לא יודע כמה אפשרי בפרוג
זה עובד אחרתזה עובד על XENFORO
לא יודע איך להסביר
אולי המומחים יידעואני באמצע לנסות על פרוג, אבל זה כל הזמן נכשל מבעיות אבטחה והרשאות, נראה אם ייצא מזה משהו בסוף..
שם הדף מגיע מוכן בhtml
ניסיתי ליצור לזה תוסף והיה לי מורכבבעיקרון כבר הצלחתי על חלק מהשרשורים, אבל יש שם כמה מבנים שונים של שרשור, ובחלקם זה נתקע.
-
כרגע לפרוג יש לי את זה [פעם ראיתי היכנשהו], הוא נותן בירידה למטה לפתוח את העמוד הבא בלי לסגור את הנוכחי, וממשיכים עד הסוף ומדפיסים לPDF. איטי, מסורבל, ומוציא קובץ ענק.
javascript:(function(){if(window['pgzp']){_pgzpToggleBookmarklet();}else{window._page_zipper_is_bookmarklet=true;window._page_zipper=document.createElement('script');window._page_zipper.type='text/javascript';window._page_zipper.src='//www.printwhatyoulike.com/static/pagezipper/pagezipper_10.js';document.getElementsByTagName('head')[0].appendChild(window._page_zipper);}})();
-
@אהרן כתב בשיתוף | המשך ל תוסף ייצוא שרשורים מהפורום - כלי מושלם עבור הקשר לבינה מלאכותית:
@יום_שמח
מדהים.
אשמח לכזה גם לפורום פרוג.