ヘッダー
Python サンプル集
 

Base64Urlをデコードする

2023/1/1

→ C# のサンプルに切り替える → Visual Basic のサンプルに切り替える

 

Base64UrlをUTF-8の文字列をデコードする

import base64

base64string = '5b6z5bed5a625bq3QUJD'

#まず通常のBase64に変換する
padCount = [0,1,2,1][len(base64string) % 4]
base64string = base64string + '=' * padCount

#元の値に変換する
value = base64.urlsafe_b64decode(base64string).decode()

print(value) #徳川家康ABC

 

 

Base64UrlをShift_JISの文字列にデコードする

import base64

base64string = 'k7-Q7InGjU5BQkM'

#まず通常のBase64に変換する
padCount = [0,1,2,1][len(base64string) % 4]
base64string = base64string + '=' * padCount

#元の値に変換する
value = base64.urlsafe_b64decode(base64string).decode('Shift_JIS')

print(value) #徳川家康ABC

 

 

Base64Urlをオブジェクトにデコードする

オブジェクトの一例として、Base64Url を リスト にデコードする例。

import base64
import json

base64string = 'WyJBcHBsZSIsICJcdTVmYjNcdTVkZGRcdTViYjZcdTVlYjciLCAiMTIzNDUiXQ'

#まず通常のBase64に変換する
padCount = [0,1,2,1][len(base64string) % 4]
base64string = base64string + '=' * padCount

#jsonにする
jsonString = base64.urlsafe_b64decode(base64string).decode()

#values は "Apple", "徳川家康", "12345" を要素に持つリストになります。
values = json.loads(jsonString)

#リストの要素を , で結合して1つも文字列として出力します。
print(','.join(values)) #Apple,徳川家康,12345

メモ:リストに限らず、json.loadsで解析できるオブジェクトはこの例が通用します。

 

 

Base64Urlをbytesにデコードする

import base64

base64string = 'EjRWeJq83vA'

#まず通常のBase64に変換する
padCount = [0,1,2,1][len(base64string) % 4]
base64string = base64string + '=' * padCount

#元の値に変換する
bins = base64.urlsafe_b64decode(base64string)

#bytesを16進数表記の文字列で出力します。
print(bytes.hex(bins).upper()) #123456789ABCDEF0