代码拉取完成,页面将自动刷新
对于不同的字段的生成方式多样,对于那些无法使用内置方法来实现的字段可以自己写 生成规则。下面就说下httpfaker如何使用自定义方法。
使用命令来创建一个httpfaker项目,项目名为目录名;不指定目录名时默认为httpfaker-project
httpfaker init --project-name myproject
cd myproject
创建成功后会在当前目录下生成一个myproject的目录,目录结构如下:
(venv) guolong@guolong-PC:~/PycharmProjects/httpfaker-test/httpfaker-project$ tree
.
├── apis
│ └── sample.yml
├── log
│ └── dbfaker.log
├── readme.md
└── script # 自定义生成规则Python文件所在目录
└── sample.py
4 directories, 5 files
(venv) guolong@guolong-PC:~/PycharmProjects/dbfaker-test/dbfaker-project$ ls -la
总用量 24
drwxr-xr-x 5 guolong guolong 4096 10月 19 18:10 .
drwxr-xr-x 6 guolong guolong 4096 10月 19 18:10 ..
drwxr-xr-x 2 guolong guolong 4096 10月 19 18:12 data
drwxr-xr-x 2 guolong guolong 4096 10月 19 18:10 log
-rw-r--r-- 1 guolong guolong 300 10月 19 18:10 readme.md
drwxr-xr-x 3 guolong guolong 4096 10月 19 18:10 script
在项目目录下的script目录下新建一个Python文件,文件名自定义(需以.py结尾),文件中添加一个继承自faker.BaseProvider的子类;类方法即为自定义的方法。
# 示例Python方法,一个对字符串进行md5加密的方法
cat script/sample.py
from faker.providers import BaseProvider
import hashlib
class MProvider(BaseProvider):
def md5(self, value: bytes):
if isinstance(value, str):
value = value.encode()
return hashlib.md5(value).hexdigest()
你可以在这个示例文件中继续添加自定义方法,也可以新起一个Python文件,继承faker.BaseProvider类即可!
PS:
httpfaker引用自定义方法只需要在程序运行目录的script目录下存在自定义脚本即可自动加载,不强制要求创建项目。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。