前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用 Python 伪造数据

使用 Python 伪造数据

作者头像
伪君子
发布2018-04-17 15:24:48
8190
发布2018-04-17 15:24:48
举报
文章被收录于专栏:伪君子的梦呓伪君子的梦呓

0 前言

某些时刻,因为个人数据不想泄露出去,所以需要伪造一下数据;也有使用爬虫的时候需要换一下 user agent ,一个用到旧会被发现,最后就是被封结尾。

运行环境是 Python3, Win10,编译器是 Pycharm

1 个人数据

使用的是 faker 这个包,安装的过程直接省去。下面这段代码是生成简单的个人信息。

语言那可以自己选择,注释那只给出了常用的语言。

1.1 自己选择需要的数据

代码语言:javascript
复制
from faker import Faker

fake = Faker('zh_CN')  # en_US,zh_CN,zh_TW
for _ in range(4):  # 输出4个,方便选择
    print("姓名:" + fake.name() + "    工作:" + fake.job())
    print("公司:" + fake.company())
    print("住址:" + fake.address())
    print("===========")

下面是运行结果,职位的本地化还稍微有所欠缺,哪怕选择了中文,工作职位还是英文的。

运行结果

1.2 生成简单的个人数据

如果不喜欢,或者闲麻烦,可以直接调用给出的方法生成简单的个人信息

代码语言:javascript
复制
from faker import Faker

fake = Faker('zh_CN')  # en_US,zh_CN,zh_TW
print(fake.simple_profile(sex=None))

代码运行后的结果就是这样

简单个人信息

1.3 生成复杂的个人数据

如果觉得不够详细,可以想下面这样做。

代码语言:javascript
复制
from faker import Faker

fake = Faker('zh_CN')  # en_US,zh_CN,zh_TW
print(fake.profile(fields=None, sex=None))

复杂个人信息

还有很多的东西没有写出来,建议去阅读官方文档(官方文档是英文的

2 爬虫 user_agent

运行爬虫的时候总会加上 user_agent,每一次都是找一堆 user_agent,然后堆在一起,最后用 random 随机选择一个。

代码语言:javascript
复制
user_agent = ["Mozilla/5.0 (Windows NT 10.0; WOW64)", 'Mozilla/5.0 (Windows NT 6.3; WOW64)',
              'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',
              'Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko',
              'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.95 Safari/537.36',
              'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; rv:11.0) like Gecko)',
              'Opera/9.27 (Windows NT 5.2; U; zh-cn)',
              'Mozilla/5.0 (Macintosh; PPC Mac OS X; U; en) Opera 8.0',
              'Opera/8.0 (Macintosh; PPC Mac OS X; U; en)'
              ]

不得不说,麻烦到爆炸,还让代码多出了一堆,既不美观,又显多余。

上面看到的代码是我精简 3 次后的结果,原来的代码有20行

现在只需用一下 faker 这个包,简简单单就可以弄出一堆的 user_agent 了

多种样式,能满足大部分需求。

代码语言:javascript
复制
from faker import Faker

fake = Faker('zh_CN')  # en_US,zh_CN,zh_TW

print(fake.safari())
print(fake.opera())
print(fake.chrome(version_from=13, version_to=63, build_from=800, build_to=899))
print(fake.firefox())
print(fake.user_agent())

官方文档那的介绍更加详细,建议多看看

3 相关说明

faker 的 GitHub (原文链接):

https://github.com/joke2k/faker

faker 的说明文档:

https://faker.readthedocs.io/

题图:Photo by Harli Marten on Unsplash

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 萧北月 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0 前言
  • 1 个人数据
    • 1.1 自己选择需要的数据
      • 1.2 生成简单的个人数据
        • 1.3 生成复杂的个人数据
        • 2 爬虫 user_agent
        • 3 相关说明
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档