Phân tích dữ liệu JSON bằng Python giúp việc chuyển đổi dữ liệu dễ dàng hơn với chất lượng nhẹ của chúng. International Data Corporation dự đoán rằng, đến năm 2022, Dữ liệu lớn và Ngành công nghiệp kinh doanh sẽ tăng 62% so với năm 2018. Vì việc chia sẻ dữ liệu khá phổ biến trong thế giới kỹ thuật số, mọi người có ý định gửi nhiều dữ liệu từ máy chủ chính của họ đến
Phân tích dữ liệu JSON bằng Python giúp quá trình chuyển đổi dữ liệu dễ dàng hơn với chất lượng nhẹ của chúng. International Data Corporation dự đoán rằng, đến năm 2022, Dữ liệu lớn và Ngành kinh doanh sẽ tăng 62% so với năm 2018. Vì chia sẻ dữ liệu là một điều khá phổ biến trong thế giới kỹ thuật số, mọi người có ý định gửi nhiều dữ liệu từ máy chủ chính của họ đến các ứng dụng khách hàng hoặc từ máy chủ này sang cơ sở dữ liệu khác. Mọi người rất tin tưởng vào các định dạng tệp trao đổi dữ liệu như JSON để truyền dữ liệu đến thiết bị ở đầu bên kia, chuyển đổi dữ liệu thành định dạng mà người dùng có thể đọc được. Trong bài viết này, chúng ta hãy cùng khám phá JSON là gì, cách phân tích JSON trong Python và tại sao?
Vì JSON là định dạng nhẹ, nên điều này giúp chuyển đổi dễ dàng hơn về mặt thời gian và tốc độ. Đây là lý do tại sao những người thực hành dữ liệu thích gửi và nhận tin nhắn ở định dạng JSON. Nhưng khi dữ liệu được chuyển đổi đòi hỏi thêm các thao tác, người dùng phải chuyển đổi chúng thành ngôn ngữ mà máy có thể hiểu được. Đây là lý do tại sao mọi người phân tích cú pháp JSON bằng python. Ở đây, chúng ta đang làm việc với ngôn ngữ Python. Vì vậy, chúng ta sẽ phải đọc và phân tích cú pháp JSON bằng các thư viện và hàm Python để truy cập dữ liệu.
Để biết tầm quan trọng của việc phân tích dữ liệu, hãy đọc bài viết này Phân tích dữ liệu và lợi ích .
Javascript Object Notation (JSON) là một định dạng dữ liệu nhẹ truyền thông tin từ máy chủ đến ứng dụng web theo định dạng mà người dùng có thể đọc được. Mặc dù định dạng JSON là một sản phẩm phái sinh của JavaScript, nhưng nó sử dụng định dạng văn bản để biểu diễn các đối tượng. Máy có thể phân tích cú pháp JSON trong Python để chuyển đổi dữ liệu JSON thành định dạng mà máy có thể đọc được.
Dữ liệu JSON mẫu
{
"person": [
{
"name": "John",
"age": "26",
"languages": ["C", “Python”]
},
{
“name": “Nitin",
"age": "24",
"languages": ["Java", “Python”]
}
]
}
Sau đây là chuỗi JSON mẫu. Nội dung trong dấu ngoặc nhọn là một đối tượng và dữ liệu trong dấu ngoặc vuông là một mảng.
The JSON string {“name”: “John”, “age”: “26”, “languages”: [“C”, “Python”]} is similar to the dictionaries in Python. Just like dictionaries, JSON also has keys and values. Here the keys and value pairs are separated with a colon. The ‘name,’ ‘age,’ and ‘languages’ are the keys, and the data after the colon are the values of the respective keys. JSON can be accessed in Python using the JSON library that holds all the functions to convert the JSON strings into Python dictionaries and vice versa.
Python có thể truy cập dữ liệu JSON bằng cách nhập thư viện JSON vào mã Python. Mô-đun JSON trong Python cho phép người dùng đọc, viết, phân tích cú pháp và thực hiện các thao tác khác trên dữ liệu JSON.
nhập json
Dữ liệu JSON có nhiều loại như chuỗi, mảng, đối tượng, số, tệp và nhiều loại khác nữa.
Python Parse JSON – Đối tượng Python tương đương
Sau khi nhận được dữ liệu JSON, nhiệm vụ chính là chuyển đổi dữ liệu JSON thành các kiểu dữ liệu Python. Bảng này hiển thị danh sách các kiểu dữ liệu JSON và các định dạng Python tương đương của chúng.
Kiểu dữ liệu JSON | Kiểu dữ liệu Python |
---|---|
sự vật | từ điển |
mảng | danh sách, bộ |
sợi dây | đường |
con số | số nguyên, số thực |
ĐÚNG VẬY | ĐÚNG VẬY |
SAI | SAI |
không có | Vô giá trị |
Ở đây chúng ta sẽ tìm hiểu cách phân tích cú pháp một số dữ liệu JSON thành định dạng Python tương đương.
Chuỗi JSON thành Từ điển PythonMảng JSON thành Danh sách PythonTệp JSON thành Đối tượng Python.
Hãy xem xét một chuỗi JSON mẫu.
{
"name": "John",
"age": "26"
}
Việc gán chuỗi trong một biến có thể giúp các hoạt động phân tích cú pháp dễ dàng hơn bằng cách truyền biến vào các hàm. Ví dụ: print(person)
person ='{"name": "John", "age": "26"}'
Câu lệnh print(person) sẽ in ra chuỗi.
person ='{"name": "John", "age": "26"}'
print(person)
Đầu ra
{“name”: “John”, “age”: “26”}
Truyền biến vào hàm type() sẽ đảm bảo dữ liệu là chuỗi.
person ='{"name": "John", "age": "26"}'
print(person)
print(type(person))
Đầu ra
{“name”: “John”, “age”: “26”}
<class ‘str’>
Bước đầu tiên là phân tích cú pháp dữ liệu JSON ở dạng chuỗi thành dạng thân thiện với Python. Như đã thảo luận trước đó, chuỗi JSON và từ điển Python khá giống nhau vì cả hai đều có cấu trúc cặp khóa-giá trị. Để đọc và phân tích cú pháp dữ liệu JSON trong Python, trước tiên hãy nhập thư viện JSON. Hàm loads() được sử dụng để phân tích cú pháp chuỗi JSON thành từ điển Python. Ký tự 's' trong hàm loads() biểu thị chuỗi.
nhập json json .loads(STRNAME)
Hãy xem xét chuỗi JSON mẫu mà chúng ta đã in trong ví dụ trên.
person ='{"name": "John", "age": "26"}'
print(person)
Sử dụng hàm json.loads() để chuyển đổi chuỗi thành từ điển python. 'json' trong json.loads() biểu thị tên thư viện.
json.loads( người )
Cũng cần phải gán câu lệnh load() cho một biến mới. Ở đây, chúng tôi sử dụng biến 'person_dxnry'.
person_dxnry = json.loads(person)pyt
Sau khi chuyển đổi chuỗi thành một từ điển và gán nó cho một biến mới, chúng ta có thể sử dụng hàm type() để xem kiểu dữ liệu trước và sau khi chuyển đổi.
in ( kiểu (người)) in ( kiểu (người_dxnry))
import json
person ='{"name": "John", "age": "26"}'
print(person)
print(type(person))
person_dxnry = json.loads(person)
print(person_dxnry)
print(type(person_dxnry))
Đầu ra:
{“name”: “John”, “age”: “26”}
<class ‘str’>
{‘name’: ‘John’, ‘age’: ’26’}
<class ‘dict’>
Ở đây, hàm type() cho thấy kiểu ban đầu là chuỗi và sau khi chuyển đổi nó trở thành từ điển.
Chúng ta hãy thử chuyển đổi một kiểu dữ liệu JSON khác thành cấu trúc Python bằng cách sử dụng mã JSON mẫu có một mảng.
{
"name": "John",
"age": "26",
"languages": ["C", “Python”]
}
ngôn ngữ = '["C", “Python”]' danh sách ngôn ngữ = json.loads(ngôn ngữ)
nhập jsonpyt ngôn ngữ = '[ "C" , " Python "]' danh sách ngôn ngữ = json.loads(ngôn ngữ) in(danh sách ngôn ngữ) in( kiểu ( danh sách ngôn ngữ ))
Sử dụng hàm type() cho cả hai biến có thể giúp chúng ta xác minh kiểu dữ liệu.
Đầu ra
['C', 'Trăn']
<class ‘list’>
Đầu ra này cho biết mảng JSON trong 'languages' được chuyển đổi thành danh sách bởi hàm loads().
Định dạng JSON phổ biến nhất là chuỗi. Cũng có khả năng cao là nhận được dữ liệu ở định dạng JSON dưới dạng tệp. Bất kể kiểu dữ liệu là gì, mục đích cuối cùng là phân tích chúng thành định dạng có thể đọc được bằng python. Có hai hàm, như load() và loads(), mà bạn có thể sử dụng để phân tích. Các hàm phân tích JSON này khác nhau ở kiểu dữ liệu JSON. Chúng ta sẽ thảo luận ngắn gọn về các hàm này trong các phần sắp tới.
Thư viện JSON tích hợp của Python cung cấp một hàm chuyển đổi khác 'load()' để đọc và phân tích tệp JSON trong Python.
Python Parse JSON – Ba phương pháp.
Bước đầu tiên là lưu mã mẫu này với tên 'person.json'
{
"name": "John",
"age": "26",
}
Có hai hàm để phân tích cú pháp tệp JSON. Một là hàm open(). Phương thức open() giúp mở tệp JSON và hướng dẫn trình biên dịch thực hiện quy trình chuyển đổi bằng cách sử dụng thao tác load().
với open ('person.json') là tệp :pyt
Sau khi mở tệp JSON, chúng ta phải tạo biến 'data' để chỉ định hoạt động tải.
dữ liệu = json.load( tệp )
Cuối cùng, chúng ta có thể sử dụng hàm type() để kiểm tra loại nội dung.
in ( loại (dữ liệu))
Chúng ta có thể truy cập các phần tử trong từ điển đã chuyển đổi bằng cách sử dụng biến 'data' và truyền các khóa của từ điển như 'name' và 'age'.
in ( dữ liệu ['tuổi']) in ( dữ liệu [' tên '])
nhập json với open('person.json') dưới dạng tệp: data = json.load( tệp ) in ( loại ( dữ liệu )) in ( dữ liệu ['tuổi']) in ( dữ liệu ['tên'])
Đầu ra:
<class ‘dict’>
26
John
Đầu ra cho biết loại là 'dictionary'. Đầu ra này có nghĩa là chúng ta đã chuyển đổi thành công tệp JSON thành danh sách.
Chúng ta cũng có thể chuyển đổi biểu mẫu dữ liệu Python thành JSON bằng các hàm dumps() và dump(). Đây là các quy trình ngược lại của hàm load() và loads(). Hãy lấy một từ điển Python và chuyển đổi nó thành chuỗi JSON, bằng cách sử dụng hàm dump().
Chúng tôi đã định nghĩa một từ điển Python là 'person_dictionary'.
person_dictionary = {'name': 'John', 'age': 26 }
Sử dụng hàm dumps() để thực hiện thao tác chuyển đổi và gán nó cho biến mới 'person_json'.
person_json = json.dumps ( person_dictionary ) in ( person_json )
import json
person_dictionary = {'name': 'John',
'age': 26
}
person_json = json.dumps(person_dictionary)
print(person_dictionary)
print(type(person_dictionary))
print(person_json)
print(type(person_json))
Đầu ra:
{‘name’: ‘John’, ‘age’: 26}
<class ‘dict’>
{“name”: “John”, “age”: 26}
<class ‘str’>
Sử dụng hàm type() cho cả hai biến 'person_dictioanry' và 'person_json' đảm bảo định dạng Python được chuyển đổi thành chuỗi JSON.
Phân tích cú pháp JSON được ưa chuộng rộng rãi với các ứng dụng chuyển đổi dữ liệu như thu thập, phân tích, di chuyển dữ liệu và các quy trình tích hợp dữ liệu. Các giải pháp này với proxy sẽ giúp bạn có trải nghiệm tốt hơn về việc thu thập và chuyển đổi dữ liệu không giới hạn bằng python. Hãy xem qua blog này để biết cách thêm proxy với các yêu cầu python . Proxyscrape cung cấp proxy với nhiều loại khác nhau để hỗ trợ quá trình phân tích cú pháp này.
JSON đã trở thành một thứ thiết yếu khi làm việc trên các trang web. Bất cứ khi nào có nhu cầu truyền dữ liệu hoặc chia sẻ dữ liệu, mọi người thường sử dụng định dạng JSON vì chúng nhẹ và dễ hoán đổi. Định dạng JSON giống như một dạng văn bản hơn, do đó người dùng có thể dễ dàng hiểu nội dung. Máy cũng có thể đọc và phân tích cú pháp nội dung thành định dạng thân thiện với máy. Ở đây, chúng tôi đã thảo luận về một số chức năng chuyển đổi trong Python, như open(), load(), loads(), dump() và dumps(). Các hàm tích hợp này của mô-đun JSON có thể đọc và phân tích cú pháp dữ liệu từ định dạng JSON sang các kiểu dữ liệu Python và ngược lại.