[PYTHON] Einführung in die TestData-Erstellungsbibliothek Mimesis

Einführung

Es gab eine Situation, in der es schön wäre, wenn es eine große Menge (ähnlicher) Unternehmensdaten gäbe, und eine Bibliothek namens Mimesis war praktisch, also werde ich sie vorstellen.

Ziel

Frontingenieur, jeder, der Testdaten erstellen möchte, jemand, der Python mag python3.6 oder höher muss installiert sein

Tor

Installation - bis Sie einfache JSON-Testdaten ausgeben können

Was ist Mimesis?

Testdatenerstellungsbibliothek Faker scheint berühmt zu sein, aber es scheint, dass keine Unternehmensdaten erstellt werden Mimesis kann Unternehmensdaten erstellen und es ist eine seltsame Homepage Es scheint, dass Sie auch Daten wie die IP-Adresse erstellen können, daher habe ich versucht, Daten mit dieser Bibliothek zu erstellen Mimesis Official

Installation

Die Installation von Mimesis erfolgt nur über Pip

$ pip install Mimesis

Ich denke immer, dass Pip ein sehr guter Kerl ist (Copype)

Getting Started Einfach zu verwenden

main.py


import mimesis

#Stellen Sie die Testdaten auf Japanisch ein
g = mimesis.Generic('ja')

#Firmenname und Firmenart
print("{0} {1}".format(g.business.company_type(), g.business.company()))
# homePage
print(g.internet.home_page())

Starten und durchsuchen

Am Terminal

$ python main.py 
Denka Seiken Co., Ltd.
https://bantay.moscow

Ist es nicht ein Firmenname, der irgendwie zu sein scheint?

Ausgabe als JSON-Daten

Ich werde JSON-Testdaten erstellen, da dies eine große Sache ist (Weil es bequemer ist, ob Sie Swagger oder Import importieren)

Quelle

Die vorherige Quelle

main.py


import json
from datetime import date, datetime
import mimesis

#Richten Sie Datums- und Zahlenformate aus(Dies ist bei der Ausgabe von JSON praktisch)
def format_default(obj):
    if isinstance(obj, datetime) or isinstance(obj, date):
        return obj.isoformat()
    if isinstance(obj, decimal.Decimal):
        #Wenn es keinen Bruchteil gibt, kehren Sie mit Int zurück
        if float(obj).is_integer():
            return int(obj)
        else:
            return float(obj)
    raise TypeError

#Bereiten Sie Dict so vor, dass mehrere Elemente festgelegt werden können
data = []
g = mimesis.Generic('ja')

#Generieren Sie mehrere Elemente und legen Sie sie in Dict fest(Ändern Sie hier die gewünschte Nummer
for idx, x in enumerate(range(0, 2)):
    ins_data = {}
    ins_data['company_id'] = idx  # Id
    ins_data['company_name'] = "Co., Ltd.{0}".format(g.business.company())  #Name der Firma
    ins_data['foundation_date'] = g.datetime.formatted_date("%Y/%m")  #Gründungsdatum
    ins_data['postal_code'] = g.address.postal_code()  #Postleitzahl
    ins_data['state'] = g.address.state()  #Präfekturen
    ins_data['city'] = g.address.city()  #~ Stadt
    ins_data['street'] = g.address.street_name()  #Adresse
    ins_data['home_page'] = g.internet.home_page()  # homepage
    data.append(ins_data)  #Zum Diktat hinzugefügt

#Formatieren Sie Dict als JSON und geben Sie es aus
print(json.dumps(data, default=format_default, indent=2, ensure_ascii=False))
$ python main.py 
[
  {
    "company_id": 0,
    "company_name": "Mitsubishi UFJ Financial Group, Inc.",
    "foundation_date": "2003/08",
    "postal_code": "559-9285",
    "state": "Akita",
    "city": "Matsuyama Stadt",
    "street": "Meguro",
    "home_page": "https://trachytes.frl"
  },
  {
    "company_id": 1,
    "company_name": "Daimaru Co., Ltd.",
    "foundation_date": "2004/02",
    "postal_code": "564-0918",
    "state": "Präfektur Fukushima",
    "city": "Ota City",
    "street": "Kanamecho",
    "home_page": "https://arvin.tui"
  }
]

Wie wäre es damit, es macht Spaß, es nur anzusehen.

Der Rest ist so

$ ptyhon main.py > testData.json

Testdaten (JSON) werden erstellt und für Swagger- und Front Mock-Daten verwendet.

Bonus

Zu guter Letzt werde ich vorstellen, welche Art von Daten erstellt werden können. (Weil es andere interessante Dinge gibt, die Sie nicht verwenden können

Random ID, Menge usw.

Address Land, Stadt usw.

Business Firma, Firma_Typ usw.

Datetime Tage, Stunden usw.

Food Getränk, Gemüse usw. (Das ist interessant, nicht wahr?

Person Vorname, E-Mail, Bluttyp usw.

Text Alphabet, Antwort usw.

Development Betriebssystem, Version usw.

File Dateiname, MIME-Typ usw.

Hardware CPU, Bildschirmgröße usw.

Internet home_page, http_method, ip_v4 usw.

Numbers komplexe_Nummer, Indikatoren (Start = 0, Ende = 10, n = 10) usw.

Path Zuhause, Wurzel usw.

Path Zuhause, Wurzel usw.

Recommended Posts

Einführung in die TestData-Erstellungsbibliothek Mimesis
Einführung in die Palormap-Erweiterungsbibliothek palettierbar
[Python] Verwendung der Diagrammerstellungsbibliothek Altair
Einführung in die Konfiguration einer selbst erstellten Bibliothek
Ich habe die Changefinder-Bibliothek ausprobiert!