Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีตรวจสอบข้อมูลโดยใช้ Cerberus ใน python


แนะนำตัว

โมดูล Cerberus ใน python มีฟังก์ชันตรวจสอบข้อมูลที่มีประสิทธิภาพแต่มีน้ำหนักเบา ได้รับการออกแบบในลักษณะที่คุณสามารถขยายไปยังแอปพลิเคชันต่างๆ และการตรวจสอบความถูกต้องที่กำหนดเองได้

ก่อนอื่นเรากำหนดสคีมา จากนั้นตรวจสอบข้อมูลกับแบบแผนและตรวจสอบว่าตรงกับเงื่อนไขที่ให้ไว้หรือไม่ หากไม่เป็นเช่นนั้น ข้อผิดพลาดที่แม่นยำจะแสดงตำแหน่งที่ผิดพลาด

สามารถใช้เงื่อนไขต่างๆ พร้อมกันกับช่องข้อมูลเพื่อตรวจสอบความถูกต้อง

เริ่มต้นใช้งาน

คุณต้องติดตั้ง Cerberus ก่อนจึงจะใช้งาน Cerberus ได้ เนื่องจากไม่ได้มาพร้อมกับ Python

ในการดาวน์โหลดและติดตั้ง เราใช้ pip package manager

เปิดเทอร์มินัลแล้วใช้คำสั่งด้านล่าง

pip install Cerberus

เมื่อคุณดาวน์โหลดและติดตั้งไลบรารี Cerberus สำเร็จแล้ว คุณต้องนำเข้าโมดูลตัวตรวจสอบความถูกต้องลงในสคริปต์ Python ของคุณ

from cerberus import Validator

และนั่นแหล่ะ คุณพร้อมที่จะเริ่มตรวจสอบข้อมูลแล้ว

กำลังตรวจสอบข้อมูลที่มีอยู่ในพจนานุกรม

ขั้นแรก เราต้องสร้างสคีมา

schema = {'numbers': {'type': 'integer'}}
v = Validator(schema)

ซึ่งหมายความว่า ในพจนานุกรมหลาม ช่องตัวเลขต้องมีเฉพาะจำนวนเต็มเท่านั้น

data = {'numbers': 5}

ด้านบนนี้เป็นข้อมูลที่เราต้องตรวจสอบ

if v.validate(data):
   print("Data is valid")
else:
   print("Data is invalid")

สิ่งนี้จะตรวจสอบข้อมูลกับรูปแบบที่เราสร้างไว้ก่อนหน้านี้

ตัวอย่าง

from cerberus import Validator
schema = {'numbers': {'type': 'integer'}}
v = Validator(schema)
data = {'numbers': 5}
if v.validate(data):
   print("Data is valid")
else:
   print("Data is invalid")

ผลลัพธ์

Data is valid .

การตรวจสอบด้วยกฎต่างๆ และข้อผิดพลาดในการพิมพ์

from cerberus import Validator
v = Validator()
v.schema = {'ID': {'required': True, 'type': 'number'},
'age': {'type': 'integer'}}
if v.validate({'age': 60}):
   print('Data is valid')
else:
   print('Data is invalid')
   print(v.errors)

ผลลัพธ์

Data is invalid, {'ID': ['required field']}


การตั้งค่าช่วงค่าต่ำสุดและสูงสุด

from cerberus import Validator
v = Validator()
v.schema = {'name': { 'type': 'string', 'minlength': 5},
'age': {'type': 'integer', 'min': 18, 'max': 65}}
if v.validate({'name': 'VJ', 'age': 16}):
   print('Data is valid')
else:
   print('Data is invalid')
   print(v.errors)

ผลลัพธ์

Data is invalid
{'age': ['min value is 18'], 'name': ['min length is 5']}

เท่านี้คุณก็ตรวจสอบพจนานุกรม ไฟล์ json และอื่นๆ ในลักษณะเดียวกันได้โดยใช้ไลบรารี Cerberus

บทสรุป

คุณได้เรียนรู้ที่จะตรวจสอบข้อมูลโดยใช้ไลบรารี Cerberus ด้วยสคีมาที่คุณกำหนดเอง

เมื่อใช้วิธีนี้ คุณจะตรวจสอบไฟล์ json ข้อมูลที่ดึงมาจาก API ฯลฯ ได้

เราตรวจสอบข้อมูลเป็นหลักเพื่อหลีกเลี่ยงข้อผิดพลาดขณะสร้างฐานข้อมูลหรือขณะทำงานเกี่ยวกับการวิเคราะห์ข้อมูล

คุณยังสามารถตรวจสอบข้อมูลโดยอัตโนมัติและสร้างเว็บไซต์แบบไดนามิกโดยอิงจากสิ่งเดียวกันได้