تعلم اساسيات python وبرمجة اضافه ل TSmedia و كودي

mohamed chakouri

عضو نشيط
إنضم
14 أكتوبر 2018
المشاركات
149
مستوى التفاعل
106
هذا ما لاحظته
سبب عدم اشتغالها هو تركيبة الرابط
كود:
https://nodec-weyyak.akamaized.net/\\vod03\AFD644924.mp4\master-v1a1.m3u8?em=wZ1btw6XTOC-35bI_dH6yw&ex=1562970508
لكن بعد تصحيح مشكل \\
حتى يصير الى
كود:
https://nodec-weyyak.akamaized.net/vod03/AFD644924.mp4/master-v1a1.m3u8?em=wZ1btw6XTOC-35bI_dH6yw&ex=1562970508
يعمل على الويندوز
اين اجد هذا كود لاغيره اخي
 

yassinov

مصمم برامج
إنضم
16 نوفمبر 2007
المشاركات
1.317
مستوى التفاعل
6.692
ممكن استخدام
mode==103 or mode==603 or mode==703 or mode==803 or mode==1003 or mode==2003
او اي mode تريد ولكن مع استخدام
dialog='search'
كود:
self.addDir(title,href,200,image,name,1,dialog='search')
شكرا أخي محمود على التوضيح ، هكذا الأمور أفضل وسلسة.

1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png
 

aime_jeux

عضو مميز
عضو قيم
إنضم
27 جانفي 2008
المشاركات
1.263
مستوى التفاعل
4.977
اين اجد هذا كود لاغيره اخي
حي الله أخي
يمكنني تصحيح الروابط ..... الا الرابط الاول فيجب تغيير ذلك على الملف xbmctools.py
الموجود في المسار
كود:
script.module.main/lib
تبحث عن المعادلة
كود:
    def addDir(self,name, url, mode, image,category='',page=1,maintitle = False, link = False,desc='', extra={},show='', searchall = None,type='',dialog=None):
            try:category=category.encode("utf-8")
            except:cateory=str(category)
            extra=str(extra)
            m3u8=False
          
            if name and  name.startswith("Error") :
                mode=-1
                if not dialog:
                   dialog="error"
              
            if name and mode==-1 :
                if not dialog:
                   dialog="error"
                name="Error:"+name
              
            if name and  (name.startswith("Message") or str(url).startswith("Message")):
                mode=-2
                if not dialog:
                   dialog='message'
                name=name.replace("Message:","")
            if name and mode==-2 and not name.startswith("Message"):
                if not dialog:
                    dialog='message'
                name="Message:"+name
                
            if mode==-5:
                m3u8=True
                mode=0
            
            if link==True:
                mode=0
            if mode==0:
                link=True
          
                
            if mode==503:
                if not dialog:
                   dialog="input"
            if mode==903:
                if not dialog:
                   dialog="login"               
            if mode==103 or mode==603 or mode==703 or mode==803 or mode==1003 or mode==2003:
                if not dialog:
                   dialog="search"                 
            if url.startswith('plugin://plugin.video.youtube') or 'youtube.com' in url:
                             link=True
                             mode=0
            if image.startswith("img/"):
                image=AppPath+"/addons/"+self.addonSPath+"/"+image
            if not image.startswith("http") and not os.path.exists(image):
               image=AppPath+"/addons/"+self.addonSPath+"/icon.png" 
            imageBasename=getimage_basename(image)     
            try:name = name.encode('utf-8', 'ingnore')
            except:pass             
            try:category = category.encode('utf-8', 'ingnore')
            except:pass             
            try:desc = desc.encode('utf-8', 'ingnore')
            except:pass               

            
            if url and ('m3u8' in url and not name == 'm3u8_0') or m3u8==True:
                try:
                    from m3u8player import getm3u8playlist
                    list = getm3u8playlist(url)
                    for item in list:
                        url = str(item[1])
                        url = self.Clear_Txt(url)
                        title = str(item[0])+"-"+ name
                        
                        try:             
                            title = name+"_"+title.encode('utf-8', 'ingnore')
                            name=title
                        except:
                            pass

                        
                      
                except:
                        
                        pass

            if link=='True':
                      u=url
            else:
                      try:u = self.spath + '?url=' + urllib.quote_plus(url) + '&mode=' + str(mode) + '&name=' + urllib.quote_plus(name) + "&" + "image="+image+'&page=' + str(page) + '&desc=' + urllib.quote_plus(desc)+ '&category=' + urllib.quote_plus(category)+'&maintitle=' + str(maintitle) + '&extra=' + urllib.quote_plus(str(extra))+ '&show=' + urllib.quote_plus(show)
                      except:u=''

                    
                        
            cParams={}   
            cParams['title']=name
            cParams['name']=name
            cParams['url']=url
            cParams['mode']=mode
            cParams['image']=image
            cParams['category']=category
            cParams['page']=page
            cParams['maintitle']=maintitle
            try:cParams['desc']=desc.encode("utf-8",'ignore')
            except:cParams['desc']=''
            cParams['extra']=extra
            cParams['type']=type
            cParams['show']=show
            cParams['caddon_id']=self.addon_id
            cParams['csection_id']=self.section_id
            cParams['dialog']=dialog
            cParams['imageBasename']=imageBasename
            #cParams['u']=u
            
            self.list.append(cParams)
          
            
            if searchall is not None and dialog=='search':
                try:
                    dirname = os.path.split(searchall)[0]
                    addon_name = os.path.basename(dirname)
                    search_file = searchall.replace('default.pyc', 'searchall').replace('default.pyo', 'searchall').replace('default.py', 'searchall')
                    afile = open(search_file, 'w')
                    
                    afile.write(addon_name + ';;' + str(cParams))
                    afile.close()
                except:
                    pass
كما تلاحظ السطر
كود:
if url and ('m3u8' in url and not name == 'm3u8_0') or m3u8==True:
    try:
        from m3u8player import getm3u8playlist
        list = getm3u8playlist(url)
        for item in list:
            url = str(item[1])
            url = self.Clear_Txt(url)
            title = str(item[0])+"-"+ name
            try:             
                title = name+"_"+title.encode('utf-8', 'ingnore')
                name=title
            except:
                pass
    except:
        pass
تم إضافة العبارة
كود:
url = self.Clear_Txt(url)
وهذه معادلة التصحيح
كود:
    def Clear_Txt(self,url):
            # try:category=category.encode("utf-8")
            # except:cateory=str(category)
            # extra=str(extra)
            # m3u8=False
            url = url.replace('/\\','/')
            url = url.replace('\\','/')
            return url
انظر كل هذا فقط للرابط الاول
أما بقية الروابط
تصححها في الملف default.py الموجود في الاضافة weyyak
هذا الملف تستبدله بالذي عندك
 

المرفقات

mohamed chakouri

عضو نشيط
إنضم
14 أكتوبر 2018
المشاركات
149
مستوى التفاعل
106
حي الله أخي
يمكنني تصحيح الروابط ..... الا الرابط الاول فيجب تغيير ذلك على الملف xbmctools.py
الموجود في المسار
كود:
script.module.main/lib
تبحث عن المعادلة
كود:
    def addDir(self,name, url, mode, image,category='',page=1,maintitle = False, link = False,desc='', extra={},show='', searchall = None,type='',dialog=None):
            try:category=category.encode("utf-8")
            except:cateory=str(category)
            extra=str(extra)
            m3u8=False
          
            if name and  name.startswith("Error") :
                mode=-1
                if not dialog:
                   dialog="error"
              
            if name and mode==-1 :
                if not dialog:
                   dialog="error"
                name="Error:"+name
              
            if name and  (name.startswith("Message") or str(url).startswith("Message")):
                mode=-2
                if not dialog:
                   dialog='message'
                name=name.replace("Message:","")
            if name and mode==-2 and not name.startswith("Message"):
                if not dialog:
                    dialog='message'
                name="Message:"+name
                
            if mode==-5:
                m3u8=True
                mode=0
            
            if link==True:
                mode=0
            if mode==0:
                link=True
          
                
            if mode==503:
                if not dialog:
                   dialog="input"
            if mode==903:
                if not dialog:
                   dialog="login"               
            if mode==103 or mode==603 or mode==703 or mode==803 or mode==1003 or mode==2003:
                if not dialog:
                   dialog="search"                 
            if url.startswith('plugin://plugin.video.youtube') or 'youtube.com' in url:
                             link=True
                             mode=0
            if image.startswith("img/"):
                image=AppPath+"/addons/"+self.addonSPath+"/"+image
            if not image.startswith("http") and not os.path.exists(image):
               image=AppPath+"/addons/"+self.addonSPath+"/icon.png" 
            imageBasename=getimage_basename(image)     
            try:name = name.encode('utf-8', 'ingnore')
            except:pass             
            try:category = category.encode('utf-8', 'ingnore')
            except:pass             
            try:desc = desc.encode('utf-8', 'ingnore')
            except:pass               

            
            if url and ('m3u8' in url and not name == 'm3u8_0') or m3u8==True:
                try:
                    from m3u8player import getm3u8playlist
                    list = getm3u8playlist(url)
                    for item in list:
                        url = str(item[1])
                        url = self.Clear_Txt(url)
                        title = str(item[0])+"-"+ name
                        
                        try:             
                            title = name+"_"+title.encode('utf-8', 'ingnore')
                            name=title
                        except:
                            pass

                        
                      
                except:
                        
                        pass

            if link=='True':
                      u=url
            else:
                      try:u = self.spath + '?url=' + urllib.quote_plus(url) + '&mode=' + str(mode) + '&name=' + urllib.quote_plus(name) + "&" + "image="+image+'&page=' + str(page) + '&desc=' + urllib.quote_plus(desc)+ '&category=' + urllib.quote_plus(category)+'&maintitle=' + str(maintitle) + '&extra=' + urllib.quote_plus(str(extra))+ '&show=' + urllib.quote_plus(show)
                      except:u=''

                    
                        
            cParams={}   
            cParams['title']=name
            cParams['name']=name
            cParams['url']=url
            cParams['mode']=mode
            cParams['image']=image
            cParams['category']=category
            cParams['page']=page
            cParams['maintitle']=maintitle
            try:cParams['desc']=desc.encode("utf-8",'ignore')
            except:cParams['desc']=''
            cParams['extra']=extra
            cParams['type']=type
            cParams['show']=show
            cParams['caddon_id']=self.addon_id
            cParams['csection_id']=self.section_id
            cParams['dialog']=dialog
            cParams['imageBasename']=imageBasename
            #cParams['u']=u
            
            self.list.append(cParams)
          
            
            if searchall is not None and dialog=='search':
                try:
                    dirname = os.path.split(searchall)[0]
                    addon_name = os.path.basename(dirname)
                    search_file = searchall.replace('default.pyc', 'searchall').replace('default.pyo', 'searchall').replace('default.py', 'searchall')
                    afile = open(search_file, 'w')
                    
                    afile.write(addon_name + ';;' + str(cParams))
                    afile.close()
                except:
                    pass
كما تلاحظ السطر
كود:
if url and ('m3u8' in url and not name == 'm3u8_0') or m3u8==True:
    try:
        from m3u8player import getm3u8playlist
        list = getm3u8playlist(url)
        for item in list:
            url = str(item[1])
            url = self.Clear_Txt(url)
            title = str(item[0])+"-"+ name
            try:             
                title = name+"_"+title.encode('utf-8', 'ingnore')
                name=title
            except:
                pass
    except:
        pass
تم إضافة العبارة
كود:
url = self.Clear_Txt(url)
وهذه معادلة التصحيح
كود:
    def Clear_Txt(self,url):
            # try:category=category.encode("utf-8")
            # except:cateory=str(category)
            # extra=str(extra)
            # m3u8=False
            url = url.replace('/\\','/')
            url = url.replace('\\','/')
            return url
انظر كل هذا فقط للرابط الاول
أما بقية الروابط
تصححها في الملف default.py الموجود في الاضافة weyyak
هذا الملف تستبدله بالذي عندك
انا مجرد هاوي غير محترف لا افهم في اكواد وتعديل عليها ممكن تعطيني معدلة انا فقط اشغلها وشكرا اخي
 

aime_jeux

عضو مميز
عضو قيم
إنضم
27 جانفي 2008
المشاركات
1.263
مستوى التفاعل
4.977
انا مجرد هاوي غير محترف لا افهم في اكواد وتعديل عليها ممكن تعطيني معدلة انا فقط اشغلها وشكرا اخي
معذرة أخي الفاضل اجبتك على تقدير طلبك
أنت قلت
اين اجد هذا كود لاغيره اخي
فما عليك غير تحميل الملف المرفق ولا تهتم بالرابط الاول على الاقل لك الروابط الاخرى
 

mohamed chakouri

عضو نشيط
إنضم
14 أكتوبر 2018
المشاركات
149
مستوى التفاعل
106
معذرة أخي الفاضل اجبتك على تقدير طلبك
أنت قلت
اين اجد هذا كود لاغيره اخي
فما عليك غير تحميل الملف المرفق ولا تهتم بالرابط الاول على الاقل لك الروابط الاخرى
كنت اضنه كود اغيره بكلمة المهم بدلت ملف المرفق ولم تشتغل اضافة وياك
 

sjabbar

عضو فعال
إنضم
14 ديسمبر 2018
المشاركات
356
مستوى التفاعل
1.053
كنت اضنه كود اغيره بكلمة المهم بدلت ملف المرفق ولم تشتغل اضافة وياك
أخي جربت الملف الذي وضعه الأخ ابو ياسين وشغال 10 على 10
على هذا المسار C:\wTSmedia\addons\arabic\weyyak
 
التعديل الأخير:

sjabbar

عضو فعال
إنضم
14 ديسمبر 2018
المشاركات
356
مستوى التفاعل
1.053
شغال بدون تعديلات التي قالها ولا ايه
عزيزي الأخ ابو ياسين جزاه الله الف خير هو قام بالتعديل والاصلاح والملف ارفقه لك منذ البداية. وقال لك ما عليك سوى تحميله واستبداله بالقديم. استبدله في هذا المسار C:\wTSmedia\addons\arabic\weyyak
 

mohamed chakouri

عضو نشيط
إنضم
14 أكتوبر 2018
المشاركات
149
مستوى التفاعل
106
عزيزي الأخ ابو ياسين جزاه الله الف خير هو قام بالتعديل والاصلاح والملف ارفقه لك منذ البداية. وقال لك ما عليك سوى تحميله واستبداله بالقديم. استبدله في هذا المسار C:\wTSmedia\addons\arabic\weyyak
اشتغل عندي في نسخة قديمة wtsmedia لكن في نسخة الاخيرة لم تشتغل لم افهم لماذا
 
أعلى