Faker๋ž€?

  • Faker๋Š” ํ…Œ์ŠคํŠธ๋‚˜ ๋ฐ๋ชจ์šฉ์œผ๋กœ ํ˜„์‹ค๊ฐ ์žˆ๋Š” ๊ฐ€์งœ ๋ฐ์ดํ„ฐ๋ฅผ ์ž๋™ ์ƒ์„ฑํ•ด ์ฃผ๋Š” ํŒŒ์ด์ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
    • ์ด๋ฆ„ยท์ฃผ์†Œยท์ „ํ™”๋ฒˆํ˜ธ ๊ฐ™์€ ๊ฐœ์ธ ์ •๋ณด๋ถ€ํ„ฐ ๋‚ ์งœยท๊ธˆ์œตยท์ธํ„ฐ๋„ทยท์œ„์น˜ยทํ…์ŠคํŠธ ๋“ฑ 100์—ฌ ์ข… ์ด์ƒ์˜ ํ•„๋“œ๋ฅผ ๋กœ์ผ€์ผ๋ณ„(์˜ˆ: ko_KR, en_US)๋กœ ์†์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ
    • ์‹œ๋“œ ๊ณ ์ •ยท์œ ๋‹ˆํฌ ๊ฐ’ยท์ปค์Šคํ…€ provider ํ™•์žฅ์„ ์ง€์›ํ•ด ์žฌํ˜„์„ฑ๊ณผ ๋‹ค์–‘์„ฑ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด ์คŒ
  • ์‚ฌ์šฉ ์˜ˆ์‹œ
    • pandas ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„ ๋Œ€๋Ÿ‰ ์ƒ์„ฑ์— ์‚ฌ์šฉ
    • API ๋ชจํ‚น ํ›„๋‹จ ํ…Œ์ŠคํŠธ์— ์œ ์šฉ
    • ๋กœ์ผ€์ผ ํ˜ผํ•ฉ์œผ๋กœ ๋‹ค๊ตญ์–ด ์‹œ๋‚˜๋ฆฌ์˜ค ๊ฒ€์ฆ

์‚ฌ์šฉ ๋ฐฉ๋ฒ•

๊ฐ์ฒด ์ƒ์„ฑ
  • ๋กœ์ผ€์ผ๋กœ ๋ฌธํ™”๊ถŒ๋ณ„ ๋ฐ์ดํ„ฐ ์ƒ์„ฑ ๊ฐ€๋Šฅ
    from faker import Faker
    fake = Faker('ko_KR')	# ํ•œ๊ตญ์–ด ๋กœ์ผ€์ผ
์‚ฌ๋žŒ ๊ด€๋ จ ๋ฐ์ดํ„ฐ
  • ์ด๋ฆ„
    fake.name()            # ํ™๊ธธ๋™
    fake.first_name()
    fake.last_name()
  • ์‹ ์›
    fake.ssn()
    fake.profile()
  • ์—ฐ๋ฝ์ฒ˜
    fake.phone_number()
    fake.email()
    fake.address()
์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ
  • ๋‚ ์งœ์™€ ์‹œ๊ฐ„
    fake.date()            # 2025-06-21
    fake.time()            # 14:23:01
    fake.date_time_this_year()
  • ํƒ€์ž„์Šคํƒฌํ”„ ๋ฌธ์ž์—ด ์ปค์Šคํ…€
    fake.date_time().isoformat()
๊ธˆ์œต ๋ฐ์ดํ„ฐ
  • ์นด๋“œ
    fake.credit_card_number()
    fake.credit_card_expire()
    fake.credit_card_provider()
  • ํ™”ํ
    fake.pricetag()        # โ‚ฉ20,000
    fake.currency_name()
์ธํ„ฐ๋„ท ์„œ๋น„์Šค
  • ์›น ์‹๋ณ„์ž
    fake.ipv4()
    fake.mac_address()
    fake.url()
    fake.uri_path()
  • ํŒŒ์ผ๊ณผ ์ด๋ฏธ์ง€
    fake.file_name()
    fake.image_url()
ํ…์ŠคํŠธ ์ƒ์„ฑ
  • ๋ฌธ์žฅ๊ณผ ๋ฌธ๋‹จ
    fake.sentence(nb_words=6)
    fake.paragraph(nb_sentences=3)
์žฅ์†Œ ์ •๋ณด
  • ์œ„๋„ ๊ฒฝ๋„
    fake.latitude()
    fake.longitude()
  • ๋„์‹œ ๊ตญ๊ฐ€
    fake.city()
    fake.country()
๊ณ ๊ธ‰ ํŒจํ„ด
  • ์‹œ๋“œ ๊ณ ์ •์œผ๋กœ ์žฌํ˜„ ๊ฐ€๋Šฅ์„ฑ ํ™•๋ณด
    Faker.seed(42)
  • ์œ ๋‹ˆํฌ ์†์„ฑ
    fake.unique.email()
  • provider ํ™•์žฅ
    from faker.providers import BaseProvider
    import random
     
    class ColorProvider(BaseProvider):
    	def hex_color(self):
    		return '#%06x' % random.randint(0, 0xFFFFFF)
     
    fake.add_provider(ColorProvider)
    fake.hex_color()