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

mfaraj57

مسؤول فريق الدريم بوكس
طاقم الإدارة
إنضم
24 أوت 2007
المشاركات
8.893
مستوى التفاعل
40.092
نضيف السيرفر الجديد الى tsresolver source لاعتماده واضافته الى supported server


نعيد كتابة الكود في movizland ليتعامل مع السيرفر الجديد كأي سيرفر اخر بواسطة resolvehost






 

المرفقات

التعديل الأخير:

rgysoft

نجم المنتدى
عضو قيم
إنضم
29 أوت 2010
المشاركات
1.994
مستوى التفاعل
8.676
هذه محاوله مني الان بكتابة host جديد بعنوان moshahda.py وهو مستخدم في movizland والكود كتبه او فكرته من الاخ ياسين ان لم تخني الذاكره قديما
الكود القديم
ساقوم بالتطبيق الان ونقل النتيجه مباشرة

كود:
def resolve_moashada(url):
                    print "url",url
                   
                 
                    import re,time
                    print "url",url
                    #sys.exit(0)          

                    html=readnet(url)
                                     
                    id = re.findall('<input type="hidden" name="id" value="(.*?)">',html, re.M|re.I)[0]
                    fname = re.findall('<input type="hidden" name="fname" value="(.*?)">',html, re.M|re.I)[0]
                    hash = re.findall('<input type="hidden" name="hash" value="(.*?)">',html, re.M|re.I)[0]
                    action = re.findall('''<Form method="POST" action='(.*?)'>''',html, re.M|re.I)[0]
                    print "id,fname,hash,action",id,fname,hash,action
                    time.sleep(10)
                    #sys.exit(0)
                    data= {
                        'imhuman': "Proceed to video",  
                        'op': 'download1',
                        'usr_login': '',
                        'id': id,
                        'fname': fname,
                        'referer': '',
                        'method': 'POST',
                        'action': action,
                        'hash': hash}  
                    result=net.http_POST(url, data, headers={}, compression=True).content
                 
                    regx2='''file:"(.*?)",label:"(.*?)"'''
                    #try:result=result.split('jwplayer("vplayer").setup')[2]
                    #except:pass
                    try:match2 = re.findall(regx2,result, re.M|re.I)
                    except:return
                    href='''http://163.172.32.146/hls/l7y2x4s6drmjvkrxw47cafcoimydxs2xi5ogml57t,a2qdxbbinzhfhtpzfda,y5qbxbbinzcjygaqata,q5qbxbbinzdxkkkqcoa,.urlset/master.m3u8"},{file:"http://163.172.32.146/l7y2x4s6drmjvkrxw47cafcoimydxs2xi5ogml57ta2qdxbbinzhfhtpzfda/v.mp4'''
                    i=0
                    for href,qual in match2:
                           
                            if 'm3u8' in href:
                                    hrefs=href.split(".m3u8")
                                    href1=hrefs[0]+".m3u8"
                                    href2=finddata(href,'file:"',".mp4")+".mp4"
                                    addDir("m3u8",href1,0,"","",1,link=True,extra=extra,desc=desc)
                                    addDir("hd",href2,0,"","",1,link=True,extra=extra,desc=desc)
                                    continue
                                   
                            addDir(qual,href,0,"","",1,link=True,extra=extra,desc=desc)


بواسطة استعمال الصيغه الجديده
مع ابقاء استعمال الاليات القديمه للتعامل مع احضار المعلومات من الموقع
[CODE]# -*- coding: cp1256 -*-
import wsyspath
from iTools import CBaseAddonClass,printD,printE
import sys,warnings
import urllib,urllib2,re,os,json,requests,hashlib,xbmcaddon
from requests.packages.urllib3.exceptions import InsecureRequestWarning
warnings.simplefilter('ignore',InsecureRequestWarning)
##########################################



Agent = {'User-agent': 'Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/65.0'}
import requests
import urllib2
import re
from xbmctools import readnet,finddata
class moshahda(CBaseAddonClass):
        def __init__(self):
                CBaseAddonClass.__init__(self,{'cookie':'moshahda.cookie'})

                self.USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:66.0) Gecko/20100101 Firefox/66.0'
                self.MAIN_URL = 'http://moshahda.online'
                self.HEADER = {'User-Agent': self.USER_AGENT,'Accept-Language':'ar','Accept':'application/json, text/plain, */*' ,'DNT':'1', 'Accept': 'text/html', 'Accept-Encoding':'gzip, deflate', 'Referer':self.getMainUrl(), 'Origin':self.getMainUrl()}
                self.AJAX_HEADER = dict(self.HEADER)
                self.AJAX_HEADER.update( {'X-Requested-With': 'XMLHttpRequest', 'Accept-Encoding':'gzip, deflate', 'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8', 'Accept':'application/json, text/javascript, */*; q=0.01'} )
                self.cacheLinks  = {}
                self.defaultParams = {'header':self.HEADER, 'raw_post_data':True, 'use_cookie': True, 'load_cookie': True, 'save_cookie': True, 'cookiefile': self.COOKIE_FILE}
             

        def get_video_url(self,url):

                    print "url",url
                   
                    from addon.common.net import Net
                    net=Net()
                    import re,time
                    print "url",url
                    #sys.exit(0)          

                    html=readnet(url)
                                     
                    id = re.findall('<input type="hidden" name="id" value="(.*?)">',html, re.M|re.I)[0]
                    fname = re.findall('<input type="hidden" name="fname" value="(.*?)">',html, re.M|re.I)[0]
                    hash = re.findall('<input type="hidden" name="hash" value="(.*?)">',html, re.M|re.I)[0]
                    action = re.findall('''<Form method="POST" action='(.*?)'>''',html, re.M|re.I)[0]
                    print "id,fname,hash,action",id,fname,hash,action
                    time.sleep(10)
                    #sys.exit(0)
                    data= {
                        'imhuman': "Proceed to video",  
                        'op': 'download1',
                        'usr_login': '',
                        'id': id,
                        'fname': fname,
                        'referer': '',
                        'method': 'POST',
                        'action': action,
                        'hash': hash}  
                    result=net.http_POST(url, data, headers={}, compression=True).content
                 
                    regx2='''file:"(.*?)",label:"(.*?)"'''
                    #try:result=result.split('jwplayer("vplayer").setup')[2]
                    #except:pass
                    try:match2 = re.findall(regx2,result, re.M|re.I)
                    except:return
                    href='''http://163.172.32.146/hls/l7y2x4s6drmjvkrxw47cafcoimydxs2xi5ogml57t,a2qdxbbinzhfhtpzfda,y5qbxbbinzcjygaqata,q5qbxbbinzdxkkkqcoa,.urlset/master.m3u8"},{file:"http://163.172.32.146/l7y2x4s6drmjvkrxw47cafcoimydxs2xi5ogml57ta2qdxbbinzhfhtpzfda/v.mp4'''
                    i=0
                    list=[]
                    for href,qual in match2:
                           
                         
                            list.append((qual,href))      
                            #addDir(qual,href,0,"","",1,link=True,extra=extra,desc=desc)
                    return list






url='http://moshahda.online//4y1ybnhx794d.html'
print moshahda().get_video_url(url)
نطبق الكود الاخير بالصيغه الجديده ولكن بدون استعمال getPage
على هذا الرابط
كود:
url='http://moshahda.online//4y1ybnhx794d.html'
النتيجه


واضح من النتيجه انه شغال وجيد
الان نستبدل الاليات القديمه readnet , وغيرها ب getPage ونرى



هذا البلوك من الاليات القديمه نستبدله ب getPage



ننفذ الكود مره اخرى
نرى ان الجزء الذي استخدمنا به getPage ناجح مع تبيان addParams المستعمله
الجزء الثاني وهو يعتمد على postdata اعطى اخطأ لاني حذفت تعريف الاليات القديمه

الان نستخدم getPage في الجزء الثاني الذي يعتمد على postData

نعيد صياغة البلوك بواسطة الاسلوب الجديد



نطبق الكود لنرى النتيجه
النتيجه ايجابيه ونجح الكود
اتمنى اعتماد الستايل الجديد لكتابة الكود الاضافات وايضا hosts من الاخ العزيز ابو ياسين واعتقد انه مع الوقت سيصبح سلسا وايضا يتوافق افضل مع TSmedia14 وايضا يكون اسهل للاخ rgysoft اذا اراد استعمال Host TSmedia hosts
حقيقتا مجهود اكثر من رائع
وتغيير الهوستات الى النمط الجديد يفتح افاق تطوير مستقبلية كبيرة
انا حاليا اوقفت العمل مؤقتا طبعا على tsiplayer و اعمل على نسخة e2iplayer تكون خاصة بنا وطبعا ستكون فبها كثير من التغييرات وتكون متوافقة اكثر مع tsiplayer
وفي هذه النسخة سيكون تعامل خاص مع tsmedia و tsiplayer خاصتا بعد تغيير نمط الهوستات
طبعا هذا اذا كتب الله لهذه النسخة ان ترا النور
كل الشكر و التقدير
 

aime_jeux

عضو مميز
عضو قيم
إنضم
27 جانفي 2008
المشاركات
1.260
مستوى التفاعل
4.964
تمت العملية بنجاح على movizland
MV_1.png MV_2.png MV_3.png

لا بد من الذكر ان هذا الشرح ياتي ليس في سياق اني اعلم من زملائي في هذه الامور بل على العكس هم يعرفون اني الاقل مهاره في استخدام هذه الامور ولكل له باع طويل وخبره واسعه وحرفيه كبيره ويعملون بصمت والجأ لهم تكرارا للمساعده في المشاكل الصعبه ولكن ربما ظروفي تسمح لي بالتنبيش والبحث عن الافكار الجديده ولكوني لا احب الاحتفاظ بشىء قد يفيد اضعه هما وهذا الشرح يأتي في هذا السياق فقط لا اكثر
والله هذا من تواضعك ونبلك .... عن نفسي الله يشهد علي للنهل الذي أصبته منك ... حياك الله وبياك
 

mohamed chakouri

عضو نشيط
إنضم
14 أكتوبر 2018
المشاركات
149
مستوى التفاعل
106
نضيف السيرفر الجديد الى tsresolver source لاعتماده واضافته الى supported server


نعيد كتابة الكود في movizland ليتعامل مع السيرفر الجديد كأي سيرفر اخر بواسطة resolvehost






اخي محمود حملت اخر نسخة wtsmedia لكن لا تستغل عندي اضافات التاليةistikana & mycima & shahid4u & wayyak لماذا اخي
 

mohamed chakouri

عضو نشيط
إنضم
14 أكتوبر 2018
المشاركات
149
مستوى التفاعل
106

aime_jeux

عضو مميز
عضو قيم
إنضم
27 جانفي 2008
المشاركات
1.260
مستوى التفاعل
4.964
ممكن اخي تحمل نسختك من wtsmedia لان فيها اضافات ليست عندي مثل taktikora وشكرا
حياك الله
هذه الاضافات اعمل عليها وانظر في اكوادها فالكثير منها ملخبطة :hi2:
حمل الاضافات باستعمال add addon
 

mohamed chakouri

عضو نشيط
إنضم
14 أكتوبر 2018
المشاركات
149
مستوى التفاعل
106
امسح اي اضافه لانها ممكن تكون قديمه ونصبها من add addon
على الاقل وياك كانت تعمل معي صباحا
مسحتها ودخلتها كما طلبت لكن تعطيني no data found مع العلم استخدم نسخة wtsmedia 16.0.1_05-07-2019
 

mfaraj57

مسؤول فريق الدريم بوكس
طاقم الإدارة
إنضم
24 أوت 2007
المشاركات
8.893
مستوى التفاعل
40.092
لا اعتقد ان الفيديوهات تفتح على الوينودز لانها مبرمجه للانيجما


جرب النسخه المرفقه وضعها في wTSmedia/addons/arabic بعد فك الضغط عنها
 

المرفقات

aime_jeux

عضو مميز
عضو قيم
إنضم
27 جانفي 2008
المشاركات
1.260
مستوى التفاعل
4.964
لا اعتقد ان الفيديوهات تفتح على الوينودز لانها مبرمجه للانيجما


جرب النسخه المرفقه وضعها في wTSmedia/addons/arabic بعد فك الضغط عنها
هذا ما لاحظته
سبب عدم اشتغالها هو تركيبة الرابط
كود:
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
يعمل على الويندوز
 
أعلى