Hoe Dummy-gegevens in Ruby, Perl en Python te genereren

Hoe Dummy-gegevens in Ruby, Perl en Python te genereren / Wordpress en webontwikkeling

U bouwt een webtoepassing en u hebt realistische informatie nodig om erin te komen. U moet controleren of uw validatiefuncties perfect werken en zien dat uw product echt werkt.

Het enige probleem is dat je niet echt gegevens uit de echte wereld kunt gebruiken. Er zijn gewoon veel te veel juridische en ethische overwegingen die u moet maken. In sommige rechtsgebieden zijn er inderdaad specifieke juridische obstakels om real-world data in ontwikkelingsomgevingen te gebruiken. Neem, bijvoorbeeld, het VK.

Hier is iets dat de Data Protection Act heet, 1998. Het is vrij ondubbelzinnig met de manier waarop bedrijven omgaan met de gegevens die ze behouden:

Persoonsgegevens worden alleen voor een of meer gespecificeerde en wettige doeleinden verkregen en mogen niet verder worden verwerkt op enigerlei wijze die onverenigbaar is met dat doel of die doeleinden..

Of, met andere woorden, gegevens kunnen alleen worden gebruikt binnen een context die is overeengekomen met de persoon die hun gegevens heeft verstrekt, zij het met een handvol uitzonderingen. Als gevolg hiervan is het vaak niet mogelijk om persoonlijke gegevens te gebruiken in een test- of ontwikkelomgeving. Dus, hoe komen we hier omheen?

Gemakkelijk. We genereren valse gegevens. Maar wat als u grote hoeveelheden realistische gegevens moet genereren? Gelukkig worden er een aantal bibliotheken genoemd oplichter die op een programeerbare manier dummy persoonlijke informatie creëren, inclusief namen, e-mailadressen en telefoonnummers.

In dit artikel laat ik je zien hoe je deze bibliotheken gebruikt in een aantal populaire talen, waaronder Ruby, Perl, Python en JavaScript.

Robijn

Ik ben een grote Ruby-fan. Er is veel om van te houden met deze taal, waaronder een van de beste pakketmanagers die er zijn, een vriendelijke en gastvrije ontwikkelaarscommunity en een gezond ecosysteem van bibliotheken van derden. Het is ook belachelijk eenvoudig te leren 3 Interactieve, leuke, gratis manieren om te leren De Ruby programmeertaal 3 Interactief, leuk, gratis manieren om te leren De Ruby programmeertaal Ruby is een expressieve scripttaal van zeer hoog niveau. Het wordt voornamelijk op internet gebruikt als onderdeel van het webontwikkelingskader van Ruby on Rails, maar ook als standalone. Als je nieuwsgierig bent naar wat Ruby is (niet ... Lees meer .

Om de Faker-bibliotheek voor Ruby te bemachtigen, moet je eerst controleren of je RubyGems hebt geïnstalleerd. Je kunt een binary voor je ontwikkelplatform naar keuze pakken op de officiële RubyGems-website.

Installeer vervolgens Faker vanaf de opdrachtregel:

gem install faker 

U moet het mogelijk als root installeren. Als dat zo is, voer dan:

sudo gem install faker 

En activeer vervolgens je favoriete teksteditor. We gaan nu een aantal valse namen maken!

vereisen 'faker' zet Faker :: Name.name 

Dus we importeren de faker-module en drukken vervolgens enkele namen uit. Wanneer je dit uitvoert, zou je zoiets als dit moeten zien.

Oké, laten we wat andere dingen toevoegen. We gaan enkele (algoritmisch geldige) creditcardnummers genereren, een e-mailadres en een straatadres. Voeg de volgende regels toe.

zet Faker :: Adres.street_adres zet Faker :: Business.credit_card_number zet Faker :: Internet.email 

Voer dat nog een keer uit. Je ziet zoiets als dit.

Perl

Perl is niet dood. Nee, mijnheer-e. Hoewel het op dit moment nauwelijks de hipste, hipste taal op dit gebied is, heeft het toch zijn fans. Het is niet verwonderlijk dat er een poort van Faker voor Perl is. Maar hoe gebruik je het?

Nou, eerst moet je het installeren. Ik neem aan dat je Perl en CPAN hebt geïnstalleerd. Zo niet, installeer het dan. Als u Windows gebruikt, kan ik u aanbevelen om Strawberry Perl te installeren, een volwassen, door de gemeenschap ondersteunde implementatie van Perl voor Windows XP naar 8.1.

Voer in een opdrachtprompt het volgende uit:

cpan Gegevens :: Faker 

Mogelijk wordt u om uw root-wachtwoord gevraagd, dus loop niet weg. Open vervolgens uw favoriete teksteditor en maak een bestand met de naam 'data.pl'. Voeg binnen de volgende regels toe.

gebruik Data :: Faker; mijn $ faker = Gegevens :: Faker-> nieuw (); print $ faker-> name. "\ n"; print $ faker-> street_address. "\ n"; print $ faker-> email. "\ n"; 

Dit zou redelijk logisch moeten zijn. We importeren het Data :: Faker bibliotheken, het Faker-object instantiëren en vervolgens een naam, adres en e-mailadres afdrukken. U ziet misschien dat we hier geen creditcardnummers maken. Dat komt omdat de Perl-poort aanzienlijk beperkter is dan de Ruby-poort.

Wanneer je het uitvoert, zou je zoiets als dit moeten zien.

Python

Laten we verder gaan met Python. Ik schrijf veel over Python Move over Shell-Scripts: Sh.py is hier en het is geweldig. Move-over Shell-Scripts: Sh.py is hier en het is geweldig. Ik wed dat je niet wist dat je shell-scripts in Python kon schrijven: sh.py stelt je in staat om programma's aan te roepen, parameters door te geven en uitgangen af ​​te handelen. Meer lezen, en het is zonder enige twijfel mijn favoriete taal om te coderen. Als je in de verleiding bent om het eens te proberen, bekijk dan dit artikel De 5 beste websites om Python te leren programmeren De 5 beste websites om Python te leren programmeren Wil je Python leren programmering? Dit zijn de beste manieren om Python online te leren, waarvan vele volledig gratis zijn. Lees meer van mijn collega Joel Lee over sites waar je kunt leren programmeren in Python. Het blijkt ook dat Faker is geporteerd voor deze geweldige taal. De Python-poort van Faker is uniek met betrekking tot hoe je nep-informatie kunt maken die specifiek is voor een landinstelling. Hier is hoe je het kunt gebruiken.

Installeer eerst Faker. Op Python wordt het de naam 'nepfabriek' genoemd. Ik neem aan dat je een huidige installatie van pip en Python hebt geïnstalleerd. Zo niet, installeer het dan.

pip fake-factory installeren 

Open vervolgens een teksteditor en voeg de volgende regels toe.

from faker import Factory nep = Factory.create () print (fake.name ()) print (fake.street_address ()) 

Voer het uit, en je zult dit zien.

Oké, maar hoe zit het met die andere locaties die we hebben besproken? Stel dat we nep-informatie willen genereren die specifiek is voor Frankrijk? Dat is eenvoudig. We gaan gewoon voorbij Factory.create () een overeenkomstige ISO-taalcodestring. Dus voor Frans schrijven we:

nep = Factory.create ('fr_FR') 

Die (indien uitgevoerd) dit produceert:

Cool toch?

Conclusie

Faker is een krachtig hulpmiddel voor degenen die tools bouwen waar ze toegang moeten hebben tot realistische informatie, zonder de regels voor gegevensbescherming te overtreden. Hoewel de ondersteuning niet consistent (of volledig) is in alle talen, blijft het een behoorlijk nuttig hulpmiddel.

Het is vermeldenswaard dat hoewel we Faker bespraken binnen de context van Perl, Python en Ruby, het ook beschikbaar is voor PHP en JavaScript, hoewel het de moeite waard is om op te merken dat de JavaScript-poort niet zo bruikbaar is. De code voor dit artikel is beschikbaar op mijn Github-profiel.

Zoals altijd, laat me je mening weten over dit bericht en stuur me een reactie.

Ontdek meer over: App Development, Programming, Python.