משתמש:DamBot/משימות/צילום תבנית

מתוך ויקיפדיה, האנציקלופדיה החופשית

מטרה[עריכת קוד מקור | עריכה]

לקצר את הזמן הדרוש לעדכון בעיות שלא ניתנות לטיפול ע"י בוט רגיל.

תיאור[עריכת קוד מקור | עריכה]

היי. אז ככה. נראה לי שכדאי ליצור בוט אחד שידע לרוץ בשני מודים (מעברים).

שלב מעבר ראשון מעבר שני
1.1. הגדרת הבעיה עבור הבוט א' שם התבנית T ושם דף קלט פלט O
1.2. הגדרת הבעיה עבור הבוט א' קובץ CSV בן עמודה אחת עם שמות הדפים לטיפול: C1, C2, ... קובץ CSV בן עמודה אחת עם שמות הדפים לטיפול: C1, C2, ... בעמודה הראשונה, טקסט המופעים לפי הסדר של T בדף Ci בעמודה השנייה וטקסט חלופי בעמודה השלישית
2. לולאה הבוט עובר על הרשימה ועבור כל דף Ci:
2.1 מציאת התבנית מצא את כל המופעים Ci1, Ci2, ... של תבנית T בדף Ci ועבור כל Cij
2.2 עבור כל מופע לפי הסדר צור שורה בדף O עם שתי עמודות - שם הדף Ci וטקסט התבנית Cij, לפי סדר הופעתה בדף החלף בדף Ci את הטקסט של העמודה השנייה בדף O לפי סדר הופעת התבניות ב-Ci בטקסט העמודה השלישית

בכוונה עשיתי את זה פחות פורמלי ויותר בשפת הדיבור.

למשל. אם בדף AAA יש שלוש תבניות T המעבר הראשון ירכיב בדף פלט שלוש שורות עם אותו שם AAA בעמודה הראשונה ועם טקסט התבנית, ראשונה, שנייה ושלישית לפי הסדר בעמודה השנייה {{T|...}}. המעבר השני יקבל את הדף כשנוספה עמודה שלישית עם טקסט להחלפה. הוא יאתר באותה צורה את שלושת התבניות לפי סדר הופעתן בדף AAA ויחליף את הטקסט בעמודה השנייה בשורה הראשונה, או סתם המופע הראשון של תבנית T בדף AAA לבחירתך, בטקסט שמופיע בעמודה השלישית באותה שורה.

אם לא מובן משהו, תגיד לי. תודה, יגאל (בקשת עזרה, IKhitron ושיחה) 19:12, 15 במרץ 2015 (IST)


אם הבנתי נכון, בוט ההסבה עושה את זה די בקלות. עשינו את זה עם קואורינטות. תן דוגמא קונקרטית ואראה לך. «kotz» «שיחה» 22:26, 15 במרץ 2015 (IST)
לא בטוח שאתה צודק, kotz. הנה לך דוגמה: אני רוצה קובץ CSV עם שתי עמודות - שם הדף וטקסט התבנית, כדי שאוכל לפתוח אותו ב-excel. הדף מופיע ב-קטגוריה:ציטוט עם פרמטר אסור מחברי משנה, התבנית היא {{cite journal}}. הסבה לא תתאים כי כל מקרה לגופו. אני צריך לעבור עליהם במורקז באקסל ולתקן אחת אחת. יגאל (בקשת עזרה, IKhitron ושיחה) 12:48, 16 במרץ 2015 (IST)

איזה פרמטר של התבנית להכניס לcsv?

«kotz» «שיחה» 14:29, 16 במרץ 2015 (IST)

כל התבנית מ{{ ועד }} כולל. יגאל (בקשת עזרה, IKhitron ושיחה) 15:39, 16 במרץ 2015 (IST)
kotz, חמוד, וסחתיין על הניסיון, אבל לא. קודם כל כי אני צריך את זה רצוף, ולא המון מיותר בין לבין. אני צריך את הכל, ולא 9 עמודים ראשונים. וצריך שני מעברים, ושני צריך להיות קשור לראשון, כדי לעבור באותו סדר בדיוק. יגאל (בקשת עזרה, IKhitron ושיחה) 23:56, 16 במרץ 2015 (IST)
אם קוץ לא יצליח לעמוד בדרישות - אתפנה לזה במהלך השבוע הקרוב • עודד (Damzow)שיחהלימין שור! • 00:04, 17 במרץ 2015 (IST)
יגאל (בקשת עזרה, IKhitron ושיחה) 00:09, 17 במרץ 2015 (IST)
למען הסר ספק, kotz, מה שעשית חמוד ולא אתה. יגאל (בקשת עזרה, IKhitron ושיחה) 00:10, 17 במרץ 2015 (IST)
  1. רוצה רצוף - אתה אמור להעביר את הקבצים דרך grep למחרוזת ***,"{{***
  2. הכל ולא 9 עמודים - אני יכול לעדכן את הבוט שייצר את הכל
  3. מעברים וסדר - אני מציע שתכין CSV שבו 3 עמודות:
    1. שם הערך
    2. מחרוזת קיימת
    3. מחרוזת מעודכנת

כך בוט פשוט מסוגל לבצע את ההחלפה, בלי תלות בסדר. «kotz» «שיחה» 00:23, 17 במרץ 2015 (IST)

זה מתחמם, kotz. פרה פרה.
  1. grep לא פועל טוב על סמלים בעברית.
  2. מצויין. אפשר בעמוד אחד ולא באלף?
  3. אתה מתכוון שהבוט שלך יודע להחליף טקסט בטקסט?
    1. ואם כן, אז מה יקרה אם יש שתי מחרוזות מקור זהות?
    2. ומה יקרה אם יש ref? כי בכולם יש. שלא יהיו בעיות כמו בפעם הקודמת.
תודה, יגאל (בקשת עזרה, IKhitron ושיחה) 13:36, 17 במרץ 2015 (IST)
kotz, ראיתי שהרצת את זה שוב. למה? שינית משהו? כי זה יצר המון בעיות בקטגוריות המעקב. תיקנתי כמה מאות ונשארו עוד כמה מאות. מצפה לתשובתך. יגאל (בקשת עזרה, IKhitron ושיחה) 16:43, 20 במרץ 2015 (IST)
IKhitron, בכל פעם שהבוט רץ הוא רץ על כל הדפים בקטגוריה שלו. אם רוצים שלא ירוץ שוב צריך להעביר לתת-קטגוריה "מושהה זמנית" או ל"ארכיון". לא ברור לי למה הכונה "תיקנתי"? אתה מתקן את דפי הפלט של בוט ההסבה? בשביל מה?? לשאלתך: לא עדכנתי כלום בבוט. אני אעביר את הדף שלך ל"מושהה זמנית" בינתיים. «kotz» «שיחה» 17:55, 20 במרץ 2015 (IST)
תודה, kotz. כן, אני מתקן אותם. כי כמו שזה היה קודם, זה נפל לי להמון קטגוריות מעקב, כי בקסלש n שהוספת נכנס פיזית לקוד וויקי ונדבק לשמות של שדות ולערכים. יגאל (בקשת עזרה, IKhitron ושיחה) 18:29, 20 במרץ 2015 (IST)
אם יש שתי מחרוזות מקור זהות, אני מניח שמחרוזות הפלט זהות גם, אז אין בעיה.
ה-REF כנראה לא מפריע כאן. הREF מפריע רק לאיפה שמשתמשים ב {{ס:#תנאי, וכאן אני לא צופה שימוש בזה.
בכל מקרה זה מתקדם בעצלתתים, אולי שעודד יתן את הפתרון שלו. «kotz» «שיחה» 12:18, 21 במרץ 2015 (IST)
עוד לא נכנסתי לזה. המתנתי לראות מה מתקדם אתכם... • עודד (Damzow)שיחהלימין שור! • 14:07, 21 במרץ 2015 (IST)
kotz, מה שאמרת אכן אינו בעיה. אבל תחשוב על אפשרות אחרת: צריך להחליף טקסט A ל-B וטקסט אחר B ל-C. אם זה פשוט יוחלף, לא נקבל B ו-C, אלא C ו-C. כי כל המופעים של B יוחלפו, גם כאלו שלא צריך. יגאל (בקשת עזרה, IKhitron ושיחה) 20:41, 21 במרץ 2015 (IST)

לא נראה לי שזו בעיה אמיתית במקרה שלנו. «kotz» «שיחה» 20:24, 22 במרץ 2015 (IST)

מה זה מקרה שלנו? אני צריך את זה בשביל כל המקרים, kotz. יגאל (בקשת עזרה, IKhitron ושיחה) 21:19, 22 במרץ 2015 (IST)
הרי אתה כותב המרה כלשהיא שמשפרת את תבניות CITE JOURNAL. לא סביר שבאותו דף, תשפר את תבנית A להיות B ואת תבנית B להיות C. «kotz» «שיחה» 00:45, 23 במרץ 2015 (IST)
בהחלט. אבל יש לי מחשבות על שימושים רבים לזה, לא רק עכשיו, אז אני רוצה כלי שיעבוד קבוע. דרך אגב, לא מצאתי כאלו, טיפלת בגרשיים בתוך טקסט שותף של CSV, kotz? יגאל (בקשת עזרה, IKhitron ושיחה) 13:28, 23 במרץ 2015 (IST)
  1. באופן קבוע, אין הגיון שבוט יבצ החלפה של A ל-B והחלפה של B ל-C.
  2. כi במשתמש:IKhitron/סקירה מופיע ##החלף:"==>"".

«kotz» «שיחה» 13:37, 23 במרץ 2015 (IST)

טוב. שכנעת אותי, kotz. נותרה רק הבעיה עם בקסלש n. תוכל לסדר את זה? יגאל (בקשת עזרה, IKhitron ושיחה) 13:41, 23 במרץ 2015 (IST)

לא יודע מה הבעיה עם זה. כרגע יש שם הסבה של מעברי שורה ל-לוכסןהפוךN וזאת ע"מ לוודא שהכל נשאר בשורה אחת של CSV. אתה יכול לשנות את ההסבה לכל סימן שנראה לך מתאים. אפשר להחליף לרווח אם אתה מוכן למחוק את מעברי השורה. «kotz» «שיחה» 13:44, 23 במרץ 2015 (IST)

הבנתי, kotz. פתחתי אחד הקבצים שלך. grep לא עובד, אז עשיתי זאת ידנית. \n לא עובד, צריך שתשים שם מעבר שורה נורמלי. ויש בעיה עם סוגריים מסולסלים. זה תמיד פותח עם {{{ במקום {{. אפשר לתקן את זה ולנסות שוב? תודה, יגאל (בקשת עזרה, IKhitron ושיחה) 16:45, 23 במרץ 2015 (IST)
  1. מה זה אומר מעבר שורה נורמלי? מה לא עובד?
  2. תוקן
  3. מה זאת אומרת GREP לא עובד?
«kotz» «שיחה» 17:18, 23 במרץ 2015 (IST)
הפסקתי לעקוב. אם אתם זקוקים לי - נא לתייג אותי • עודד (Damzow)שיחהלימין שור! • 17:23, 23 במרץ 2015 (IST)
1. תסתכל כאן, כתוב "doi:10.1023/A:1018949113292\n. Check " צריך להיות כתוב "doi:10.1023/A:1018949113292

. Check ".

2. תודה.
3. הוא לא מתנהג כמו שאמור ונותן פלט מקרי. הוא הרי לא מיועד בעיקרון לטקסט עם עברית, kotz יגאל (בקשת עזרה, IKhitron ושיחה) 17:40, 23 במרץ 2015 (IST)
1. זה לא יעבוד כראוי בגלל שהCSV לא יבין ששני החלקים של השורה הם באותה "שורה".
3. אין עם GREP שום בעיה עקרונית עם עברית. וגם מחרוזת החיפוש שנתתי לך אין בה עברית. אולי הבעיה היא שיש שם סימנים מיוחדים. אם אתה ביוניקס תסתם בFGREP. אם אתה בWINDOWS תשתמש ב FIND. המחרוזת כמובן בלי הכוכביות.
«kotz» «שיחה» 18:08, 23 במרץ 2015 (IST)
1. למה? CSV יודע מה זה מעבר שורה בתוך גרשיים.
2. זה אוכל סמלים מהתוצאה. מקסימום, אעשה זאת לבד, אם זה לא יהיה יותר מדי, במנגנון ההחלפה של notepad++, kotz יגאל (בקשת עזרה, IKhitron ושיחה) 18:54, 23 במרץ 2015 (IST)
1. אני חולק עליך. אתה יכול למחוק את התרגום הזה ע"י שתמחק מהמפרט את הקטע ##החלף:(מעבר שורה)==>\n.
2. לא הבנתי «kotz» «שיחה» 19:07, 23 במרץ 2015 (IST)
1. למה? 2. לא הבנת מה, kotz יגאל (בקשת עזרה, IKhitron ושיחה) 19:12, 23 במרץ 2015 (IST)
kotz? יגאל (בקשת עזרה, IKhitron ושיחה) 19:54, 27 במרץ 2015 (IDT)
  1. אני חולק עליך כי אתה טוען ש-PARSER של CSV יודע שאם יש סימן מעבר שורה בין גרשיים אז זה עדיין אותו חלק מהערך; ואני טוען שPARSER כזה יחשוב שמעבר שורה, אפילו אם הוא בתוך סוגריים גרשיים, מהווה הפרדה בין רשומות. ניאלץ לבדוק זאת כמובן. בכל מקרה אם אתה רוצה שמעבר השורה לא יהפוך ל-\n עליך למחוק את הקטע "##החלף:(מעבר שורה)==>\n" מהמפרט.
  2. לא הבנתי מה זה אומר ש"זה" (מי? GREP?) "אוכל תווים" . אבל אני אתן לך להתמודד עם זה כמובן.
  3. לשאלה שלא נשאלה, מתי אשנה את הבוט כך שיכין פחות דפים - לזה אין לי תשובה. מזמן לא נגעתי בו ולא יודע מתי יהיה לי זמן לעדכנו. «kotz» «שיחה» 18:31, 31 במרץ 2015 (IDT)
תודה, kotz.
  1. אני מסכים שאם יש מעבר שורה בין הגרשיים זה חלק מאותו ערך. אבל לא הבנתי כלל את המשפט "ואני טוען שPARSER כזה יחשוב שמעבר שורה, אפילו אם הוא בתוך סוגריים גרשיים, מהווה הפרדה בין רשומות". תוכל להסביר למה התכוונת? אילו סוגריים? אולי עשית את ההחלפה מהסיבה השונה ממה שחשבתי וכזאת שאני לא מצליח להבין.
  2. כן, grep אוכל תווים. אני אנסה להתמודד. אם לא אצליח, אבקש מעודד לכתוב בוט חדש.
  3. מה זה פחות דפים? 5 במקום 9? יגאל (בקשת עזרה, IKhitron ושיחה) 19:15, 31 במרץ 2015 (IDT)
1. סוגריים גרשיים - תיקנתי מעלה.
3. אולי 2 במקום 9 ; אולי 1... נחיה ונראה «kotz» «שיחה» 19:30, 31 במרץ 2015 (IDT)
עדיין לא הבנתי, kotz. אתה כותב שהפרסר רואה במעבר שורה בגרשיים חלק מאותו ערך, ואז שהוא לא. פספסתי משהו. יגאל (בקשת עזרה, IKhitron ושיחה) 20:34, 31 במרץ 2015 (IDT)

אני טוען שהוא לא. «kotz» «שיחה» 00:35, 1 באפריל 2015 (IDT)

טוב, kotz, אני לא מצליח להבין אותך והשיחה הולכת סחור סחור. אם אתה חושב שחשוב שאבין אותך, אז תסביר בהרבה יותר פירוט. אם לא, תגיד לי ונמשיך. יגאל (בקשת עזרה, IKhitron ושיחה) 14:31, 1 באפריל 2015 (IDT)
אני טוען שכאשר הPARSER רואה מעבר שורה, לא איכפת לו אם הוא מוקף בגרשיים אם לא; והוא מתייחס למעבר השורה כמעבר שורה, אפילו שהקפת אותו בגרשיים. כך תיווצרנה שתי רשומות מקולקלות ולא אחת תקינה. יתכן שאני טועה בנושא הזה - זה כמובן תלוי בPARSE שבו תשתמש. תאלץ לבדוק בעצמך.
הדירקטיבה "<<<כל הפרמטרים>>>" שבה השתמשתי במפרט אינה מטפלת במעבר שורה באופן מיוחד; כלומר תבנית עם מעבר שורה תהפוך לטקסט (בשביל ה-CSV שלך) ובו מעבר שורה. אני הוספתי לה את הקוד "##החלף:(מעבר_שורה)-->\n" כדי לטפל בבעיה שאני טוען שהיא קיימת, וזאת ע"י החלפת מעברי שורה בסימן \n. אם אתה מעדיף שמעברי השורה ישמרו כמו שהם, פשוט מחק את קטע הקוד הנ"ל מהמפרט ואני אפעיל שוב את הבוט.
~~kotz (שיחה | תרומות | מונה) לא חתם 00:00, 10 בינואר 2000 (IST)
הבנתי. בדקתי. צדקתי. מחקתי. תוכל להריץ שוב, בינתיים, רק על 9 דפים, kotz? תודה, יגאל (בקשת עזרה, IKhitron ושיחה) 21:04, 1 באפריל 2015 (IDT)

משתמש:IKhitron, זה עדיין רלוונטי? «kotz» «שיחה» 19:02, 15 ביוני 2015 (IDT)

מבחינתך לא, אבל יום אחד אני מקווה שעודד יבנה בוט מהתחלה. יגאל (בקשת עזרה, IKhitron ושיחה) 19:04, 15 ביוני 2015 (IDT)

הפסקה[עריכת קוד מקור | עריכה]

תבנית להסבה=תבנית:Cite journal

יעד=משתמש:IKhitron/פלט

בוט רשאי לעדכן את הערכים=לא

פורמט=2

קטגוריות להסבה[עריכת קוד מקור | עריכה]

קטגוריה:ציטוט עם פרמטר אסור מחברי משנה

מפרט הסבה[עריכת קוד מקור | עריכה]

<nowiki>,"<<<שם הדף>>>","{{Cite journal<<<כל הפרמטרים##החלף:"==>"">>>}}",
</nowiki>

דיון[עריכת קוד מקור | עריכה]

היי, kotz. עברתי על זה, נראה בינתיים לא רע, אבל להכין דף אחד לקח לי איזה רבע שעה. בוא נבדוק עכשיו אם אפשר לסיים זאת בהצלחה. בפניך לעיל קובץ CSV בן שלוש עמודות, כפי שדיברנו: שם הדף, קוד שצריך למצוא, קוד שצריך לשים במקומו. תוכל להריץ את זה על אמת, בבקשה? גם אם זה לא יצליח, אז הרסנו 4 ערכים, נתקן אותם מיד. תודה, יגאל (בקשת עזרה, IKhitron ושיחה) 17:34, 6 באפריל 2015 (IDT)

  1. שים את הCSV לטיפולי בדף נפרד בבקשה.
  2. לא טוב לי (לבוט) שחלק מהשדות עם גרשיים וחלק לא.
  3. לא טוב לי (לבוט) שבתוך השדות מופיע תו שבירת שורה - הבוט לא יודע לבצע PARSE בצורה זו. יש להחליף בליטרל \n או משהו בסגנון.
«kotz» «שיחה» 23:31, 6 באפריל 2015 (IDT)
בסדר גמור, אדאג לזה. יגאל (בקשת עזרה, IKhitron ושיחה) 14:50, 7 באפריל 2015 (IDT)
אז ככה, kotz:
  1. משתמש:IKhitron/סקירה/דוגמה.csv.
  2. זה ממש לא טוב. לקח לי רבע שעה להפתר מזה.
  3. אין שם כאלו בדוגמה. כשיהיה, אין לי מושג מה אפשר לעשות.
תוכל להריץ את זה בינתיים? תודה, יגאל (בקשת עזרה, IKhitron ושיחה) 16:03, 7 באפריל 2015 (IDT)
kotz? יגאל (בקשת עזרה, IKhitron ושיחה) 14:40, 14 באפריל 2015 (IDT)

סיבוב חדש[עריכת קוד מקור | עריכה]

היי, עודד, חזרנו לנקודת ההתחלה. בואו נתחיל ממשהו קטן. יש לך גישה לקורא וכותב CSV מובנה? יגאל (בקשת עזרה, IKhitron ושיחה) 20:48, 17 באפריל 2015 (IDT)

EPPlus מכיל קורא/כותב אקסל, אני מניח שגם CSV, כי אם לא, אז זו לא בעייה לכתוב אחד כזה • עודד (Damzow)שיחהלימין שור! • 07:33, 19 באפריל 2015 (IDT)
אפשר להגיע למצב שיש כזה? יגאל (בקשת עזרה, IKhitron ושיחה) 14:32, 19 באפריל 2015 (IDT)
ברור שכן. זה לחם חוקי ב-Day job שלי • עודד (Damzow)שיחהלימין שור! • 14:53, 19 באפריל 2015 (IDT)
תודה. תגיד לי כשיהיה לך כזה? יגאל (בקשת עזרה, IKhitron ושיחה) 15:07, 19 באפריל 2015 (IDT)
כמה ימים, בלי נדר • עודד (Damzow)שיחהלימין שור! • 15:40, 19 באפריל 2015 (IDT)
יגאל (בקשת עזרה, IKhitron ושיחה) 15:42, 19 באפריל 2015 (IDT)
יגאל:
  1. כתבת לי "קובץ CSV בן עמודה אחת עם שמות הדפים לטיפול: C1, C2, ..." - אתה תגדיר לי על אילו דפי לרוץ? לא על כל מופעי התבנית?
  2. מה לגבי שורת כותרת? יש דרישה לכזו או לא?
  3. אתה רוצה את כל הטקסט של התבנית? או רק תוכן של פרמטר מסויים?
עודד (Damzow)שיחהלימין שור! • 15:21, 20 באפריל 2015 (IDT)
עודד, אבל זה בשלב הבא. סיימת כבר עם CSV? יגאל (בקשת עזרה, IKhitron ושיחה) 16:14, 20 באפריל 2015 (IDT)
יגאל עובד על זה • עודד (Damzow)שיחהלימין שור! • 09:02, 21 באפריל 2015 (IDT)