faker

该模块主要用于爬虫/扫描器在动态爬取的同时可生成对应需要填充的数据,例如搜索参数/注册登陆表单等。

而且实现代码并不多,是因为调用了 joke2k/faker 。对其做了很多改动。保留了主要的数据生成provider,并fixed几个本地化语言的bug,感兴趣可以将 wsltools/utils/faker/ 与原Package diff对比。

Instance

Class faker(Locale code)

Locale code - Support Locales code , Default By en

In[0]: from wsltools import faker
In[1]: faker('en_US')
Out[1]: <class: faker en_US>

profile

Attribute profile
In[0]: from pprint import pprint
In[1]: from wsltools import faker
In[2]: obj = faker()
In[3]: pprint(obj.profile)
Out[3]:
{'address': '761 Perez Village Apt. 282\nWest John, NE 36491',
 'birthdate': datetime.date(1911, 10, 26),
 'company': 'Johnston PLC',
 'credit_card': {'code': '036',
                 'expire': '01/30',
                 'first_name': 'Jennifer',
                 'last_name': 'Harris',
                 'name': 'Jennifer Harris',
                 'number': '3553426503431050',
                 'security': 'CVC',
                 'type': 'jcb16',
                 'type_full': 'JCB 16 digit'},
 'first_name': 'Jennifer',
 'job': 'Speech and language therapist',
 'last_name': 'Harris',
 'mail': 'ashley97@yahoo.com',
 'name': 'Jennifer Harris',
 'phone': '979-648-3157',
 'residence': '213 Darrell Wells Suite 305\nSouth Manuelmouth, CT 64277',
 'sex': 'M',
 'ssn': '893-66-9475',
 'username': 'ramirezchristina',
 'website': 'http://www.parker.org/'}

userAgent

Method userAgent(platform='desktop')

platform - desktop or mobile, Default By desktop

In[0]: from wsltools import faker
In[1]: obj = faker()
In[2]: obj.userAgent(platform='mobile')
Out[2]: Mozilla/5.0 (iPod; U; CPU iPhone OS 4_1 like Mac OS X; iu-CA) AppleWebKit/534.19.7 (KHTML, like Gecko) Version/4.0.5 Mobile/8B116 Safari/6534.19.7

creditCard

Method creditCard(card_type=Card Type)

card_type - Support Credit Card Types , Default By random choice

In[0]: from pprint import pprint
In[1]: from wsltools import faker
In[2]: obj = faker()
In[3]: pprint(obj.creditCard())
Out[3]:
{'code': '529',
 'expire': '09/24',
 'first_name': 'Derek',
 'last_name': 'Barrett',
 'name': 'Derek Barrett',
 'number': '4375995106301',
 'security': 'CVC',
 'type': 'visa13',
 'type_full': 'VISA 13 digit'}

email

Attribute email
In[0]: from wsltools import faker
In[1]: obj = faker()
In[2]: obj.email
Out[2]: wsmith@griffin-wright.biz

name

Attribute name
In[0]: from wsltools import faker
In[1]: obj = faker()
In[2]: obj.name
Out[2]: {'first_name': 'Lori', 'last_name': 'Williams', 'name': 'Lori Williams'}

ssn

Attribute ssn
In[0]: from wsltools import faker
In[1]: obj = faker()
In[2]: obj.ssn
Out[2]: 833-22-4862

phone

Attribute phone
In[0]: from wsltools import faker
In[1]: obj = faker()
In[2]: obj.phone
Out[2]: (062)144-8497x2311

job

Attribute job
In[0]: from wsltools import faker
In[1]: obj = faker()
In[2]: obj.job
Out[2]: Chartered legal executive (England and Wales)

company

Attribute company
In[0]: from wsltools import faker
In[1]: obj = faker()
In[2]: obj.company
Out[2]: Kennedy PLC

address

Attribute address
In[0]: from wsltools import faker
In[1]: obj = faker()
In[2]: obj.address
Out[2]:
01065 Armstrong Streets Apt. 665
Markfort, AL 85969

Support Credit Card Types

  • maestro - Maestro
  • discover - Discover
  • jcb15 - JCB 15 digit
  • jcb16 - JCB 16 digit
  • visa13 - VISA 13 digit
  • visa16 - VISA 16 digit
  • visa19 - VISA 19 digit
  • mastercard - Mastercard
  • amex - American Express
  • diners - Diners Club / Carte Blanch

If locale code use fa_IR:

  • ansar - انصار
  • iran_zamin - ایران زمین
  • hekmat - حکمت
  • keshavarzi - کشاورزی
  • shahr - شهر
  • mehre_ghtesad - مهراقتصاد
  • sarmayeh - سرمایه
  • post_bank - پست بانک
  • tose - توسعه
  • eghtesad_novin - اقتصاد نوین
  • meli - ملی
  • pasargad - پاسارگاد
  • tourism_bank - گردشگری
  • ghavamin - قوامین
  • day - دی
  • mellat - ملت
  • tejarat - تجارت
  • mellal - ملل
  • saman - سامان
  • kosar - کوثر
  • refah - رفاه
  • saderat - صادرات
  • tat - تات
  • sina - سینا
  • kar_afarin - کار آفرین
  • sepah - سپه
  • maskan - مسکن
  • parsian - پارسیان
  • bim - صنعت و معدن

Support Locales code

  • ar_EG - Arabic (Egypt)
  • ar_PS - Arabic (Palestine)
  • ar_SA - Arabic (Saudi Arabia)
  • bg_BG - Bulgarian
  • bs_BA - Bosnian
  • cs_CZ - Czech
  • de_DE - German
  • dk_DK - Danish
  • el_GR - Greek
  • en_AU - English (Australia)
  • en_CA - English (Canada)
  • en_GB - English (Great Britain)
  • en_IN - English (India)
  • en_NZ - English (New Zealand)
  • en_US - English (United States)
  • es_ES - Spanish (Spain)
  • es_MX - Spanish (Mexico)
  • et_EE - Estonian
  • fa_IR - Persian (Iran)
  • fi_FI - Finnish
  • fr_FR - French
  • hi_IN - Hindi
  • hr_HR - Croatian
  • hu_HU - Hungarian
  • hy_AM - Armenian
  • it_IT - Italian
  • ja_JP - Japanese
  • ka_GE - Georgian (Georgia)
  • ko_KR - Korean
  • lt_LT - Lithuanian
  • lv_LV - Latvian
  • ne_NP - Nepali
  • nl_NL - Dutch (Netherlands)
  • no_NO - Norwegian
  • pl_PL - Polish
  • pt_BR - Portuguese (Brazil)
  • pt_PT - Portuguese (Portugal)
  • ro_RO - Romanian
  • ru_RU - Russian
  • sl_SI - Slovene
  • sv_SE - Swedish
  • tr_TR - Turkish
  • uk_UA - Ukrainian
  • zh_CN - Chinese (China)
  • zh_TW - Chinese (Taiwan)