API JSON của Python

{ 
  “surname”: “Edison”,
  “given_name”: “Thomas”,
  "middle_name": "Alva",  
  “age”: 84
}
[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]

JSONPythonobjectarraystringnumbertrueTruefalseFalsenullNone

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  

{"name": "Alexander Graham Bell", "job_title": "CEO","company_name": "Bell System", "age": 75, "emails": [{"email": "[email protected]", "type": "work"}], "my_neighbor": False}
formatted_json = json.dumps[
  pythonDict, 
  indent = 4, 
  separators = [“, ”, “ = “], 
  sort_keys = True
]
print[formatted_json]

{
    "age"= 75,
    "company_name" = "Bell System",
    "emails" = [
        {
        "email" = "[email protected]", 
        "type" = "work"
        }
    ],
    "job_title" = "CEO",
    "my_neighbor" = False,
    "name" = "Alexander Graham Bell"
}

#convert JSON into a python dictionary
pythonDict2 = json.loads[unformattedJSON]

#print out the value for key "job_title"
print["Individual key: job_title , value: " + pythonDict2["job_title"] +"\n"]

#print out all keys and values
print["All keys and values: \n"]
for key,value in pythonDict2.items[]:
    print["key:", key,",", "value:", value]

Individual key: job_title , value: Chief Scientist

All keys and values:

key: name , value: Alexander Graham Bell
key: job_title , value: CEO
key: company_name , value: Bell System
key: age , value: 75
key: emails , value: [{'email': '[email protected]', 'type': 'work'}]
key: my_neighbor , value: False

________số 8

namecompany_nameageAda LovelaceAlgo Prime37Thomas Alva EdisonBright Idea Technologies84

import csv
import json

#path to csv
contactsFile = r'Contacts.csv'

#Create an empty dictionary to collect values
contacts = {}
with open[contactsFile, encoding='utf-8'] as csvFile:
    csvContent = csv.DictReader[csvFile]
    for row in csvContent:
        # Use the row that starts with name as the list of keys
        key = rows["name"]
        # Assign the all of the values in the row to the appropriate key
        contacts[key] = row
print[json.dumps[contacts, indent = 4]

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
0

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
1

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
2____13

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
4

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
5

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
6

Ký hiệu đối tượng JavaScript, viết tắt là JSON, là định dạng dựa trên văn bản tiêu chuẩn để biểu thị dữ liệu có cấu trúc. Định dạng tệp JSON tương tự như định dạng của từ điển. Một JSON đơn giản có thể trông như thế này

Bạn cũng có thể viết một đối tượng JSON với hỗn hợp các chuỗi và số như hình bên dưới

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
7Chuyển đổi JSON sang Python

Python đi kèm với một gói tích hợp có tên là json, được sử dụng để thao tác và phân tích dữ liệu JSON. Dữ liệu trong json có phần mở rộng là

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
84, phần mở rộng này cho chúng ta biết rằng tệp chứa dữ liệu ở định dạng JSON

Tạo một thư mục JSON và thêm hai tệp, cụ thể là

  • [
      { 
        “given_name”: “Katherine”,
        “surname”: “Johnson”,
        “age”: 101
      },
      {
        “given_name”: “Ada”, 
        “surname”: “Lovelace”,
        “age”: 37
      } 
    ]
    85
  • [
      { 
        “given_name”: “Katherine”,
        “surname”: “Johnson”,
        “age”: 101
      },
      {
        “given_name”: “Ada”, 
        “surname”: “Lovelace”,
        “age”: 37
      } 
    ]
    86

Thêm phần sau vào

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
85

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
8

Để đọc nội dung của file json, đầu tiên chúng ta sẽ import json và sử dụng lệnh

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
88 để đọc nội dung của file. Mở json_data. py và nhập gói json

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
4

Đọc tệp bằng lệnh open[] và in nội dung của dữ liệu. tập tin json

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
5

Ở đây chúng tôi đang sử dụng phương pháp

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
89 để phân tích chuỗi JSON thành chuỗi python. đầu ra sẽ là

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
72 Ghi vào tệp JSON

Đôi khi bạn muốn lưu dữ liệu JSON vào một tệp, gói JSON cho phép bạn thực hiện điều đó trong các bước đơn giản

Giả sử chúng ta có dữ liệu JSON sau đây mà bạn muốn lưu vào một tệp

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
8

Chúng tôi sẽ sử dụng lệnh open[] và thêm một đối số 'w', như hình bên dưới

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
9

Ở đây chúng tôi sử dụng lệnh open[] làm tệp chế độ ghi dưới biến new_json và sau đó sử dụng json. phương thức dump[] để ghi vào tệp.
json. dump[] nhận hai đối số i. e. , đối tượng dữ liệu, sau đó là đối tượng tệp bạn muốn lưu.

Như bạn có thể thấy ở trên, tệp

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
40 đã được tạo trong thư mục của chúng tôi và chứa dữ liệu được ghi vào đó

Xây dựng API đơn giản với Flask-REST-JSONAPI

Flask-REST-JSONAPI là một tiện ích mở rộng cho Flask bổ sung hỗ trợ để xây dựng nhanh các API REST với tính linh hoạt cao xung quanh JSONAPI 1. 0 đặc điểm kỹ thuật. Nó được thiết kế để phù hợp với sự phức tạp của môi trường thực tế, vì vậy Flask-REST-JSONAPI giúp bạn tạo một bản tóm tắt logic cho dữ liệu của mình được gọi là “tài nguyên” và có thể giao tiếp với bất kỳ loại ORM hoặc lưu trữ dữ liệu nào thông qua khái niệm lớp dữ liệu

Chúng tôi sẽ sử dụng Flask-REST-JSONAPI để xây dựng API JSON đơn giản. API sẽ có thể đọc, thêm, cập nhật, xóa dữ liệu. Tạo một thư mục cho dự án

{"name": "Alexander Graham Bell", "job_title": "CEO","company_name": "Bell System", "age": 75, "emails": [{"email": "[email protected]", "type": "work"}], "my_neighbor": False}
1

Tạo, kích hoạt môi trường ảo và cài đặt các phụ thuộc dự án chủ yếu là bình, Flask-SQLAlchemy và Flask-REST-JSONAPI

{"name": "Alexander Graham Bell", "job_title": "CEO","company_name": "Bell System", "age": 75, "emails": [{"email": "[email protected]", "type": "work"}], "my_neighbor": False}
2

Tạo một tệp

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
41

{"name": "Alexander Graham Bell", "job_title": "CEO","company_name": "Bell System", "age": 75, "emails": [{"email": "[email protected]", "type": "work"}], "my_neighbor": False}
4

trong ứng dụng. py, tạo phiên bản ứng dụng bình và định cấu hình cơ sở dữ liệu SQLite đơn giản

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
80

Xác định mô hình Nhiệm vụ

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
81

Tiếp theo, chúng tôi sẽ tạo một lớp trừu tượng hóa dữ liệu logic bằng marshmallow, điều này rất quan trọng để không làm lộ một số chi tiết nhất định về API của bạn

Marshmallow là một thư viện ORM/ODM/framework-agnostic để chuyển đổi các loại dữ liệu phức tạp, chẳng hạn như các đối tượng, sang và từ các kiểu dữ liệu Python gốc

Trước tiên hãy bắt đầu bằng cách cài đặt marshmallow

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
82

Hãy tạo lớp trừu tượng hóa dữ liệu

Tiếp theo, chúng tôi sẽ tạo trình quản lý tài nguyên

Trình quản lý tài nguyên liên kết phần trừu tượng hóa dữ liệu, lớp dữ liệu và phần mềm khác

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
42 kế thừa từ
import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
43 và cấp quyền truy cập vào các phương thức GET và POST. Điều này cho phép bạn tạo một đối tượng tạo hoặc truy xuất một tập hợp các đối tượng tác vụ

import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
44 kế thừa từ
import json  
  
my_dictionary = {
    "name": "Alexander Graham Bell",
    "job_title": "CEO",
    "company_name": "Bell System",
    "age": 75,
    "emails": [{"email": "[email protected]", "type": "work"}],
    "my_neighbor": False
}
unformatted_json = json.dumps[my_dictionary]
print[unformatted_json]  
45. và cấp quyền truy cập vào các phương thức GET, PATCH và DELETE

Bước cuối cùng là tạo REST Endpoint

[
  { 
    “given_name”: “Katherine”,
    “surname”: “Johnson”,
    “age”: 101
  },
  {
    “given_name”: “Ada”, 
    “surname”: “Lovelace”,
    “age”: 37
  } 
]
83

ứng dụng tập tin của bạn. py bây giờ sẽ trông như thế này

Bây giờ hãy chạy máy chủ và điều hướng đến http. //127. 0. 0. 1. 5000/tác vụ, không có dữ liệu, hãy thêm một số dữ liệu bằng cách sử dụng người đưa thư

POST điểm cuối

Đảm bảo rằng bạn đặt Loại nội dung là “application/vnd. api+json” trong tiêu đề của bạn

NHẬN yêu cầu

NHẬN điểm cuối

Bạn cũng có thể xóa một tác vụ bằng cách truy vấn id của nó

DELETEKết luận

Hướng dẫn này đã trình bày cách tạo và phân tích cú pháp JSON trong bài viết này. Bạn cũng đã xây dựng một JSON API đơn giản với Python

JSON là định dạng dữ liệu ưa thích của các nhà phát triển và được sử dụng trong cấu hình dữ liệu cho các ứng dụng cũng như tạo API. Bạn cũng có thể xem hướng dẫn này về cách xây dựng API CRUD với Flask và PostgreSQL

Nếu bạn thích đọc nội dung này, hãy cân nhắc đăng ký để trở thành thành viên của Medium

Thêm nội dung bằng tiếng Anh. io. Đăng ký nhận bản tin hàng tuần miễn phí của chúng tôi. Nhận quyền truy cập độc quyền để viết các cơ hội và lời khuyên trong cộng đồng của chúng tôi Discord

Làm cách nào để viết API bằng JSON trong Python?

Tại đây, bạn có thể tìm hiểu cách tạo API JSON cơ bản bằng Python và Flask. .
Xác định cơ sở dữ liệu bằng Flask-SQLAlchemy
Tạo trừu tượng hóa dữ liệu với Marshmallow-JSONAPI
Tạo trình quản lý tài nguyên với Flask-REST-JSONAPI
Tạo điểm cuối URL và khởi động máy chủ bằng Flask

Làm cách nào để lấy API JSON bằng Python?

Để sử dụng thư viện này trong python và tìm nạp phản hồi JSON, chúng ta phải nhập json và urllib vào mã của mình, The json. .
Nhập các mô-đun cần thiết
Chỉ định URL
Nhận phản hồi của URL bằng cách sử dụng urlopen[]
Chuyển đổi nó thành phản hồi JSON bằng json. tải []
Hiển thị phản hồi JSON được tạo

JSON có thể là một API không?

API JSON cho phép bạn tích hợp bất kỳ công cụ bên ngoài nào với Cộng tác viên . Để thực hiện việc này, bạn cần trao đổi dữ liệu giữa ứng dụng và máy chủ Cộng tác viên của mình. Để sử dụng dịch vụ web, bạn cần gửi yêu cầu tới URL điểm cuối của dịch vụ web và nhận phản hồi từ đó.

Làm cách nào để tạo API bằng JSON?

Trình giữ chỗ JSON .
Trước hết, đảm bảo bạn đã cài đặt NodeJs và NPM
Tạo một tên thư mục của sự lựa chọn của riêng bạn trên vị trí mong muốn. Hiện tại, tôi đã tạo với tên. API giả mạo
Chạy npm init bên trong thư mục. .
Chạy cài đặt npm - lưu máy chủ json. .
Chúng ta cần khởi động máy chủ của mình ngay bây giờ. .
Bạn sẽ thấy một tệp có tên db

Chủ Đề