Python đánh giá JSON

Trong bài viết này, chúng ta sẽ tìm hiểu cách phân tích cú pháp phản hồi JSON bằng thư viện yêu cầu. Ví dụ: chúng tôi đang sử dụng thư viện

Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
2 để gửi lệnh gọi RESTful GET tới máy chủ và đổi lại, chúng tôi nhận được phản hồi ở định dạng JSON, hãy xem cách phân tích cú pháp dữ liệu JSON này bằng Python

Chúng tôi sẽ phân tích phản hồi JSON thành Từ điển Python để bạn có thể truy cập dữ liệu JSON bằng các cặp khóa-giá trị. Ngoài ra, bạn có thể prettyPrint JSON ở định dạng có thể đọc được

Đọc thêm

  • Giải Bài tập JSON của Python để thực hành các kỹ năng JSON của Python

Phản hồi của yêu cầu GET chứa thông tin mà chúng tôi gọi là tải trọng. Chúng tôi có thể tìm thấy thông tin này trong nội dung thư. Sử dụng các thuộc tính và phương thức của

Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
3 để xem tải trọng ở các định dạng khác nhau

Chúng tôi có thể truy cập dữ liệu tải trọng bằng ba phương thức sau của mô-đun yêu cầu

  • Entire JSON response
    {'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
    0 được sử dụng để truy cập dữ liệu tải trọng ở định dạng byte thô
  • Entire JSON response
    {'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
    1. được sử dụng để truy cập dữ liệu tải trọng ở định dạng Chuỗi
  • Entire JSON response
    {'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
    2 được sử dụng để truy cập dữ liệu tải trọng ở định dạng được tuần tự hóa JSON

Nội dung phản hồi JSON

Mô-đun yêu cầu cung cấp bộ giải mã JSON dựng sẵn, chúng ta có thể sử dụng nó khi xử lý dữ liệu JSON. Chỉ cần thực thi

Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
2, thế là xong.
Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
2 trả về phản hồi JSON ở định dạng từ điển Python để chúng tôi có thể truy cập JSON bằng các cặp khóa-giá trị

Bạn có thể gặp lỗi 204 trong trường hợp giải mã JSON không thành công.

Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
2 đưa ra một ngoại lệ trong trường hợp sau

  • Phản hồi không chứa bất kỳ dữ liệu nào
  • Phản hồi chứa JSON không hợp lệ

Bạn phải kiểm tra

Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
6 hoặc
Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
7 trước khi phân tích cú pháp JSON vì lệnh gọi thành công tới
Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
2 không biểu thị sự thành công của yêu cầu

Trong trường hợp xảy ra lỗi HTTP 500, một số máy chủ có thể trả về đối tượng JSON trong phản hồi không thành công [e. g. , chi tiết lỗi với HTTP 500]. Vì vậy, bạn nên thực hiện

Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
2 sau khi kiểm tra
Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
6 hoặc kiểm tra
Entire JSON response
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, 'origin': '49.35.214.177, 49.35.214.177', 'url': '//httpbin.org/get'}
7

Hãy xem ví dụ về cách sử dụng phản hồi. json[] và phân tích nội dung JSON

Trong ví dụ này, tôi đang sử dụng httpbin. org để thực hiện lệnh gọi GET. httpbin. org  là một dịch vụ web cho phép kiểm tra các yêu cầu và phản hồi bằng dữ liệu về yêu cầu đó. Bạn có thể sử dụng dịch vụ này để kiểm tra mã của mình

Làm cách nào để lặp lại tệp JSON trong Python?

Làm cách nào để lặp lại tệp JSON trong Python? . "v1", "k2". "v2"}' #Load chuỗi JSON vào từ điển json_dicti = json. Copy import json jsonstring1 = '{"k1": "v1", "k2": "v2"}' #Load JSON string into a dictionary json_dicti = json.

Làm cách nào để đọc các giá trị JSON trong Python?

Đọc từ JSON . Nó được thực hiện bằng cách sử dụng mô-đun JSON, mô-đun này cung cấp cho chúng ta rất nhiều phương thức, trong đó các phương thức loading[] và load[] sẽ giúp chúng ta đọc tệp JSON.

Làm cách nào để phân tích phản hồi JSON trong Python?

Để phân tích chuỗi dữ liệu JSON thành đối tượng Python, hãy sử dụng json. loads[] của gói dựng sẵn có tên json . json. phương thức loading[] phân tích cú pháp chuỗi dữ liệu JSON được cung cấp và trả về một từ điển Python chứa tất cả dữ liệu từ JSON.

Chủ Đề