עזרה בכתיבת סקריפט

תוכנות ניהול מדיה: KODI, תוספים, XBMC, Media Portal, PLEX וכו'
nironiro (פותח השרשור)
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 125
הצטרף: ספטמבר 2007
נתן תודות: 1 פעם
קיבל תודות: 3 פעמים

עזרה בכתיבת סקריפט

נושא שלא נקרא #1 

חג שמח לכולם

יש לי את הסקריפט הזה

קוד: בחירת הכל

import xbmc, sys
import xbmc
label = xbmc.getInfoLabel("Skin.String(vol)")

xbmc.executebuiltin("Skin.SetString(vol, "+label+")")
איך אני יכול להוסיף שם תנאי כל שהו או כל דבר אחר
שפשוט יבדוק אם המספר קטן מי 100 אז שיעלה ב 1

תודה לעוזרים מראש

tomer953
סמל אישי של משתמש
חבר מכור קשה
חבר מכור קשה
הודעות: 5295
הצטרף: מרץ 2010
שם מלא: tomer953
נתן תודות: 242 פעמים
קיבל תודות: 1452 פעמים

נושא שלא נקרא #2 

אני לא מכיר כ"כ את הסינטקס, אבל ראשית אתה צריך להמיר את LABEL ל INT
נדמה לי שזה יעשה זאת:

קוד: בחירת הכל

label = int(xbmc.getInfoLabel("Skin.String(vol)"))
לאחר מכן אתה יכול לבדוק באמצעות תנאי פשוט אם זה קטן מ-100 ככה:

קוד: בחירת הכל

if label < 100&#58;
 Actions  HERE
אתה יכול לקבוע את הערך החדש שיגדל באחד באמצעות משהו כזה:

קוד: בחירת הכל

newvol = label + 1
כל שנותר לך הוא לשלוח את ה newvol ל skin.setstring

nironiro (פותח השרשור)
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 125
הצטרף: ספטמבר 2007
נתן תודות: 1 פעם
קיבל תודות: 3 פעמים

נושא שלא נקרא #3 

מוזר זה גם מה שאני עשיתי ולא עובד
יש לך מושג ?
עוד מישהו?

כך ניראה הקוד בדיוק וזה לא מציג שגיאה וגם לא מגיב לכלום כלומר זה לא משנה את הסטרינג לעוד 1

קוד: בחירת הכל

import xbmc, sys
import xbmcgui

label = xbmc.getInfoLabel&#40;"Skin.String&#40;vol&#41;"&#41;
if label < 100&#58;
 xbmc.executebuiltin&#40;"Skin.SetString&#40;vol, "+newvol+"&#41;"&#41;
   newvol = label + 1 
ותודה תומר[/i]

ofekb
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 159
הצטרף: אוקטובר 2010
נתן תודות: 17 פעמים
קיבל תודות: 8 פעמים

נושא שלא נקרא #4 

קודם תגדיל את הערך באחד ואחר כך תעשה setstring או במילים אחרות תחליף בין שני השורות האחרונות

nironiro (פותח השרשור)
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 125
הצטרף: ספטמבר 2007
נתן תודות: 1 פעם
קיבל תודות: 3 פעמים

היי תודה על עזרה

נושא שלא נקרא #5 

@ofekb
·

שוב עדיין לא עובד

זה הקוד

קוד: בחירת הכל

import xbmc, sys
import xbmcgui


vol = int&#40;xbmc.getInfoLabel&#40;"Skin.String&#40;vol&#41;"&#41;&#41;
if vol < 100&#58;
	newvol = vol + 1
	xbmc.executebuiltin&#40;"Skin.SetString&#40;vol, "+newvol+"&#41;"&#41;

זה הלוג


קוד: בחירת הכל

- NOTE&#58; IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type&#58; <type 'exceptions.TypeError'>
                                            Error Contents&#58; cannot concatenate 'str' and 'int' objects
                                            Traceback &#40;most recent call last&#41;&#58;
                                              File "C&#58;\Users\niro\AppData\Roaming\Kodi\test.py", line 8, in <module>
                                                xbmc.executebuiltin&#40;"Skin.SetString&#40;vol, "+newvol+"&#41;"&#41;
                                            TypeError&#58; cannot concatenate 'str' and 'int' objects
                                            -->End of Python script error report<--

nironiro (פותח השרשור)
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 125
הצטרף: ספטמבר 2007
נתן תודות: 1 פעם
קיבל תודות: 3 פעמים

נושא שלא נקרא #6 

אני חייב להריץ את זה כ addon או שאפרי גם סקריפט בודד ?

אם אני מוריד את ה int אין שגיאה אבל זה פשוט נישאר אותו דבר
זה לא עולה באחד

ofekb
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 159
הצטרף: אוקטובר 2010
נתן תודות: 17 פעמים
קיבל תודות: 8 פעמים

Re: היי תודה על עזרה

נושא שלא נקרא #7 

@nironiro
·
במקום:

קוד: בחירת הכל

xbmc.executebuiltin&#40;"Skin.SetString&#40;vol, "+newvol+"&#41;"&#41;
שים

קוד: בחירת הכל

xbmc.executebuiltin&#40;"Skin.SetString&#40;vol, "+str&#40;newvol&#41;+"&#41;"&#41;

nironiro (פותח השרשור)
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 125
הצטרף: ספטמבר 2007
נתן תודות: 1 פעם
קיבל תודות: 3 פעמים

Re: היי תודה על עזרה

נושא שלא נקרא #8 

@ofekb
·
אופק יתותח
עובד כמו שעון שווצרי
תודה אחי

מה התפקיד של str בגדול ?
"לשפר את הידע"
נערך לאחרונה על ידי nironiro ב 06/10/2015 20:30, נערך פעם 1 בסך הכל.

ofekb
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 159
הצטרף: אוקטובר 2010
נתן תודות: 17 פעמים
קיבל תודות: 8 פעמים

נושא שלא נקרא #9 

(Y)

ofekb
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 159
הצטרף: אוקטובר 2010
נתן תודות: 17 פעמים
קיבל תודות: 8 פעמים

Re: היי תודה על עזרה

נושא שלא נקרא #10 

@nironiro
·במקרה שלך הפכת את הstring לint כדי שתוכל לבדוק אם הוא קטן מ-100 ולהוסיף לו 1.
והפונקציה executebuiltin() מקבלת string
בגלל שאי אפשר לשרשר int לstring בלי המרה בפייטון, היית צריך להפוך את זה בחזרה לstring שזה מה שהפונקציה str() עושה.

שלח תגובה

חזור אל “תוכנה - KODI”