পাইথন 3 এর সাথে আমি একটি ইউআরএল থেকে জসন নথির অনুরোধ করছি।
response = urllib.request.urlopen(request)
responseবস্তুর সঙ্গে একটি ফাইল মত অবজেক্ট readএবং readlineপদ্ধতি। পাঠ্য মোডে খোলা একটি ফাইল দিয়ে সাধারণত একটি JSON অবজেক্ট তৈরি করা যায়।
obj = json.load(fp)
আমি যা করতে চাই তা হ'ল:
obj = json.load(response)
এটি অবশ্য কাজ করে না কারণ urlopen বাইনারি মোডে কোনও ফাইল অবজেক্ট দেয়।
চারপাশের কাজ অবশ্যই:
str_response = response.read().decode('utf-8')
obj = json.loads(str_response)
তবে এটা খারাপ লাগছে ...
এর চেয়ে আরও ভাল উপায় কি আমি বাইট ফাইল অবজেক্টকে স্ট্রিং ফাইল অবজেক্টে রূপান্তর করতে পারি? অথবা আমি উভয়ের জন্য কোনও প্যারামিটার মিস করছি urlopenবা json.loadএকটি এনকোডিং দেওয়ার জন্য?