Mam do czynienia z wprowadzaniem danych w postaci dokumentów json. Te dokumenty muszą mieć określony format, jeśli nie są zgodne, należy je zignorować. Obecnie używam niechlujnej listy "jeśli te", aby sprawdzić format dokumentu json.Sprawdzanie poprawności struktury Pythona przy użyciu Validatora (lub czegoś podobnego)
Eksperymentowałem trochę z różnymi bibliotekami json-schema python, co działa dobrze, ale wciąż mogę przesłać dokument z kluczami nieopisanymi w schemacie, co czyni go bezużytecznym dla mnie.
Przykład ten nie generuje wyjątek, chociaż chciałbym go spodziewać:
#!/usr/bin/python
from jsonschema import Validator
checker = Validator()
schema = {
"type" : "object",
"properties" : {
"source" : {
"type" : "object",
"properties" : {
"name" : {"type" : "string" }
}
}
}
}
data ={
"source":{
"name":"blah",
"bad_key":"This data is not allowed according to the schema."
}
}
checker.validate(data,schema)
Moje pytanie jest dwojaki:
- jestem widokiem coś w definicji schematu?
- Jeśli nie, czy istnieje inny, lekki sposób podejścia do tej kwestii?
Dzięki
Jay
dzięki, że brakowało mi jednego. Właśnie tego potrzebuję. –