[Python cơ bản thường dùng trong công việc] Phần 7 : Xử lý file JSON

2949

JSON là gì?

JSON là một trong những định dạng file trao đổi dữ liệu thông dụng nhất hiện nay. Với kiến trúc đơn giản và tương đồng với cấu trúc của Python nên việc thao tác JSON trên Python rất dễ hiểu.

Việc làm python không cần kinh nghiệm

7.1. Load file từ Internet

Thông thường dữ liệu JSON được lấy từ nguồn khác (như file, internet..) nên chương này sẽ bắt đầu bằng cách hướng dẫn download một file JSON từ Internet và sau đó mới parsing nội dung JSON download.

Sử dụng module urllib2 để download file và module json để encode/decode JSON data. Ví dụ:

import urllib2
import json
response = urllib2.urlopen('https://api.github.com/ users/voduytuan/repos')
data = json.load(response)
print data

Ví dụ trên sẽ truy vấn đường dẫn https://api.github.com/users/voduytuan/repos để lấy danh sách Repository trên Github của mình dưới định dạng JSON.

7.2. Parsing JSON Data

Nếu như bạn đã có JSON data dưới dạng chuỗi, muốn parsing chuỗi này thành Data thì sử dụng như cách dưới đây:

import json
mystring = '{"a":1,"b":2,"c":3,"d":4,"e":5}' 
data = json.loads(mystring) 
print data
(Hiển thị: {u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4})

7.3. Encoding JSON Data

Nếu như bạn đã có một biến và muốn encode thành JSON string thì có thể dùng theo cách sau:

import json
mydata = {
    'name': 'John',
    'age': 10
}
jsonstring = json.dumps(mydata)print jsonstring

(hiển thị: {"age": 10, "name": "John"})