2017-10-03 3 views
0

파이썬 (Kodi 플러그인)에서 작업하고 있습니다. 나는 base64에있는 링크를 긁어 낼 수있다. 그러나 나는 디코딩 된 문자열로 변환 할 수없는 것, source[0]에 저장됩니다base64 파이썬 디코드를 디코딩 할 수 없습니다.

aHR0cHM6Ly9jd3MwMDQuZ2VhcjNyZC5uZXQvZmlsZXMvdmlkZW9zLzIwMTcvMTAvMDIvMTUwNjg4NTg2ODQwNmY5LTI0MC5tcDQ/aD1STXc3aFUyZVU1anlkRHBnNWRuelB3JnR0bD0xNTA3MDc4NjU2.mp4

: 나는 링크를 검색?

아래의 이유로 소스 [0]을 (를) 찾으면 디코딩되지 않습니다. b64s = base64.b64decode(source[0])

def matplayer(url): 
    page = get_url(url) 
    source = re.findall("<iframe src='(.*?)'", page) 
    if source: 
     if 'youtube' in source[0]: 
      return YoutubeOynat(url=source[0]) 
     elif 'dailymotion' in source[0]: 
      return dailyoynat(url=source[0]) 
    else: 
     source = re.compile('    file: "(.*?)"').findall(page) 
     b64s = base64.b64decode(source[0]) 
     addLink(b64s,'','','') 

def addLink(name,url,iconimage,description): 
    ok=True 
    liz=xbmcgui.ListItem(name, iconImage="DefaultVideo.png", thumbnailImage=iconimage) 
    liz.setInfo(type="Video", infoLabels={ "Title": name }) 
    liz.setInfo(type="Video", infoLabels={"Title": name,"Plot":description,}) 
    ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=url,listitem=liz)  
    return ok 
+1

정확한 오류는 무엇입니까? –

+1

디코딩 할 필요가없는 것을 디코딩하려고하는 것처럼 보입니다. 만약 당신이'src' 속성에서 그것을 긁어 낸다면 링크는 * 것입니다. –

답변

1

난 그냥 문제를 발견 : 문제는 내가 생각하는 선은 귀하의 폐기 문자열 :

import base64 
link = base64.b64decode(source.strip(".mp4")) 

print(link) 
:

source = aHR0cHM6Ly9jd3MwMDQuZ2VhcjNyZC5uZXQvZmlsZXMvdmlkZW9zLzIwMTcvMTAvMDIvMTUwNjg4NTg2ODQwNmY5LTI0MC5tcDQ/aD1STXc3aFUyZVU1anlkRHBnNWRuelB3JnR0bD0xNTA3MDc4NjU2.mp4 

내가 코드를이 방법을 쓸 것이다

위의 코드에서 확장자가없는 문자 만 디코딩했습니다 .mp4 결과는

입니다.
b'https://cws004.gear3rd.net/files/videos/2017/10/02/1506885868406f9-240.mp4?h=RMw7hU2eU5jydDpg5dnzPw&ttl=1507078656' 
관련 문제