Python3のPickleでうまくunpickleできない問題

ネット上で落としてきたとあるpickleでシリアライズされたファイルをデシリアライズしようとしたらつまづいたのでメモ.

f = open(filename, 'rb')
d = pickle.load(f)
f.close()

#イカdを使って処理...

上記のコード,Python2なら動くのですが,
Python3だと文字コードがどうとか言われてエラーになる,という問題に引っかかった.

f = open(f, 'rb')
enc = pickle._Unpickler(f)
enc.encoding = 'latin1'
d = enc.load()

上記コードによりPython3で回避(´・ω・`)