本文主要向大家介绍了Python语言的简单实用小工具,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助。

在python进行自动化编写的过程中,常常需要造一些数据,比如,获取随机的合法IP,随机的字符串,当前的时间等,下面的一些方法应该可以用到,希望对你有所帮助

#!/user/bin/env python

#coding=utf-8

import random

import socket

import string

import struct

import os

import datetime

import copy

import time

from framework.logger import Logger

logger = Logger(logger="rcpUtils").getlog()

BASE_DIR = os.path.dirname(os.path.dirname(file))

DC_PATH = BASE_DIR +  r"\config\districtcode.txt"

visaPrefixList = [

['4', '5', '3', '9'],

['4', '5', '5', '6'],

['4', '9', '1', '6'],

['4', '5', '3', '2'],

['4', '9', '2', '9'],

['4', '0', '2', '4', '0', '0', '7', '1'],

['4', '4', '8', '6'],

['4', '7', '1', '6'],

['4']]

mastercardPrefixList = [

['5', '1'], ['5', '2'], ['5', '3'], ['5', '4'], ['5', '5']]

amexPrefixList = [['3', '4'], ['3', '7']]

discoverPrefixList = [['6', '0', '1', '1']]

dinersPrefixList = [

['3', '0', '0'],

['3', '0', '1'],

['3', '0', '2'],

['3', '0', '3'],

['3', '6'],

['3', '8']]

enRoutePrefixList = [['2', '0', '1', '4'], ['2', '1', '4', '9']]

jcbPrefixList = [['3', '5']]

voyagerPrefixList = [['8', '6', '9', '9']]

MerchantNameList

=

['凯总','澄邈','德泽','海超','海阳','海荣','海逸','海昌','瀚钰','瀚文','涵亮','昌盛','恨桃','依秋','依波','香巧','紫萱','涵易','忆之','幻巧','巧兰','惜蕊','雪晴','曼彤','宛秋','碧菡','若松','向秋','涵蕾','冰蝶','沛凝']

BankCardNumberlist

=

['378288287735133','378271420218126','378238188701205','378207606238884','378275326032713','378258788874244','378210884152447','378224480016435','378288478747376','378232055211786']

MerchantUrlList_http

=

['http://www.kaizong.com','http://www.baidu.com','http://www.jd.com','http://www.tengxun.com','http://www.alibaba.com']

MerchantUrlList_https

=

['https://www.kaizong.com','https://www.baidu.com','https://www.jd.com','https://www.tengxun.com','https://www.alibaba.com']

ITList = ['441411100101148','4245245469','4245245463','4245245467','441411100101149','4245245461','441411100101146',

'4245245462','441411100101147','56214714892','111111111111','56214714890']

generator = random.Random()

generator.seed()

'''工具类'''

class rcpUtils():

def __init__(self):

pass

def AutoGeneratedString(self,number):

'''随机生成字符串方法,主要用于输入框不能超过多少字符串的场景,此一次性产生的最大的字符串是62个'''

return ''.join(random.sample(string.ascii_letters + string.digits, number))

def AutoGeneratedNumber(self,number):

return ''.join(random.sample(string.digits, number))

def get_random_ip(self):

RANDOM_IP_POOL=['192.168.10.222/0']

'''随机生成合法的IP'''

str_ip = RANDOM_IP_POOL[random.randint(0,len(RANDOM_IP_POOL) - 1)]

str_ip_addr = str_ip.split('/')[0]

str_ip_mask = str_ip.split('/')[1]

ip_addr = struct.unpack('>I',socket.inet_aton(str_ip_addr))[0]

mask = 0x0

for i in range(31, 31 - int(str_ip_mask), -1):

mask = mask | ( 1 << i)

ip_addr_min = ip_addr & (mask & 0xffffffff)

ip_addr_max = ip_addr | (~mask & 0xffffffff)

return socket.inet_ntoa(struct.pack('>I', random.randint(ip_addr_min, ip_addr_max)))

def getMerchantName(self):

#先对list去重

list(set(MerchantNameList))

return random.sample(MerchantNameList, 1)[0]

def getBankCardNumber(self):

#先对list去重

list(set(BankCardNumberlist))

return random.sample(BankCardNumberlist, 1)[0]

def getCurrentTime(self):

#2017-10-26 18:28:04,日期格式

return time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())

def getTime(self):

return time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))

def getTime_YMD(self):

'''获取当前的时间,年月日'''

return time.strftime('%Y%m%d',time.localtime(time.time()))

def getMerchantUrl_http(self):

list(set(MerchantUrlList_http))

return random.sample(MerchantUrlList_http, 1)[0]

def getMerchantUrl_https(self):

list(set(MerchantUrlList_https))

return random.sample(MerchantUrlList_https, 1)[0]

def getIT(self):

list(set(ITList))

return random.sample(ITList, 1)[0]

def get_id(self,system_id,order_id):

return order_id + '_' + system_id

def Cleaning_data_without_finger(self,RiskEventData):

if type(RiskEventData) == dict:

if RiskEventData:

NoVerificationList =

['finger_id','create_time','json','create_date','process_des','process_date','alarm_flag','id','processor_name','processor_id']

logger.info('不需要检查的字段为:%s'%NoVerificationList)

for i in NoVerificationList:

del RiskEventData[i]

logger.info('做数据清洗后的数据为:%s'%RiskEventData)

else:

logger.exception('数据没有入库!')

else:

logger.exception('传进来的不是字典类型')

return RiskEventData

def Cleaning_data_with_finger(self, RiskEventData):

if type(RiskEventData) == dict:

if RiskEventData:

NoVerificationList = ['create_time', 'json', 'create_date', 'process_des', 'process_date',

'alarm_flag', 'id', 'processor_name', 'processor_id']

logger.info('不需要检查的字段为:%s' % NoVerificationList)

for i in NoVerificationList:

del RiskEventData[i]

logger.info('做数据清洗后的数据为:%s' % RiskEventData)

else:

logger.exception('风险事件没有入库!')

else:

logger.exception('传进来的不是字典数据类型')

return RiskEventData

本文由职坐标整理并发布,希望对同学们学习Python有所帮助,更多内容请关注职坐标编程语言Python频道!

python最简单的语言_Python语言的简单实用小工具相关推荐

  1. python爬取ppt代码_Python爬取PPT模板小工具

    由于很多PPT抓取工具都会因为版本问题无法使用,所以论坛大神就自己写了这款Python爬取PPT模板小工具,可以帮助用户轻松获取各种PPT模板,使用的时候注意一次只能下载一种类型.软件仅供交流学习,下 ...

  2. python 编写实用小工具-toy: python平时积累的笔记以及编写的小工具

    所有人都告诉你怎么活,只有自己没有搞清楚该如何活.相信自己,我们每个人都是主角?? toy Python ?? 献给我亲爱的女朋友--如 ? 介绍 学习 python.matlab 时积累的笔记以及编 ...

  3. 怎么理解python语言_Python语言入门1-理解Python语言

    本文主要向大家介绍了Python语言入门的理解Python语言,通过具体的内容向大家展现,希望对大家学习Python语言入门有所帮助. python是解释型的脚本语言 解释型语言 与C/C++等编译型 ...

  4. python做算法题优势_Python语言在科学算法中的优势

    2019 年第 4 期 信息与电脑 China Computer & Communication 算法语言 Python 语言在科学算法中的优势 刘 瑞 (辽宁师范大学海华学院,辽宁 沈阳 1 ...

  5. python程序设计基础考试重点_python语言程序设计基础 复习整理 第1-3章

    第一章 程序设计基本方法 1.1 计算机的概念 /计算机是根据指令操作数据的设备,具备功能性和可编程性两个基本特性. /摩尔定律:单位面积集成电路可容纳晶体管的数量约每两年翻一倍.翻倍翻倍翻倍翻倍.. ...

  6. python语言是哪种语言_python语言是哪种语言

    python的三种选择语句_电子/电路_工程科技_专业资料.本文将详细介绍 Python 语言中的三种选择语句:if 语句,if/else 语句和 if/elif/else 语句.对 于每种语句,.. ...

  7. python中lis的意思_Python语言入门(二)

    上篇文章中,我们初步熟悉了print()函数,字符串以及多行字符串.这篇文章,我们将熟悉其它的数据类型,变量,列表以及基本运算.先讲讲数据类型. 1.int(整形).理论上,32位系统的int数据最多 ...

  8. python算法库执行效率_Python智能优化算法库小汇总

    最近查了一圈python的智能优化算法库,发现在python里面这样的库相对一些传统的语言还真是不太多(比如Matlab).总的看起来似乎起步都还比较晚(个人认为有可能是因为智能算法本身相对复杂并且过 ...

  9. python 24位图转 8位_Python爬取PPT模板小工具下载-Python爬取PPT模板小工具免费版下载v1.0...

    由于很多PPT抓取工具都会因为版本问题无法使用,所以论坛大神就自己写了这款Python爬取PPT模板小工具,可以帮助用户轻松获取各种PPT模板,使用的时候注意一次只能下载一种类型.软件仅供交流学习,下 ...

最新文章

  1. 生化医学文章模式图素材
  2. AppScan使用分享
  3. Struts框架的入门使用
  4. 程序员求职面试 HR问的问题都能轻松答出,offer分分钟到手
  5. boost的chrono模块模拟线程接口的测试程序
  6. python 写txt 换行_python中写入txt文件需要换行,以及\r 和\n
  7. php酷狗音乐json,用php来搜索酷狗音乐
  8. 如何从中级Java程序员过渡到高级Java程序员
  9. 润乾数据集调用postgresql存储过程
  10. Django-(分页器,中间介)
  11. DUBBO服务启动过程
  12. 主席树入门+博客推荐
  13. DVWA 跨站请求伪造(CSRF)
  14. 6. LaTeX 参考文献的排版与引用
  15. 经常有人会问,我的网站部署了好多个网站访问统计系统,比如百度、谷歌、CNZZ、JYC、51.la等等,但各个系统统计的结果总是不相同,而且差距不小,我该以哪个为准呢?
  16. cdr 表格自动填充文字_【Excel技巧】excel单元格自动填充英文字母编号
  17. 在gitee码云上搭建一个网站
  18. keras如何自定义损失函数(进阶版,not of the form of f(x_true, x_pred))
  19. 云南开放大学《机械制造基础-形考作业1-6(主观题)》
  20. 为什么想来我们公司工作?- 面试常见问题解析

热门文章

  1. java飞鸽源码_java版本的飞鸽编写(一)
  2. js价格筛选商品案例
  3. hashSHA256加密
  4. 如果评估销售奖金设计的有效性?
  5. 【物联网初探】- 09 - 基于 ESP32 和微信小程序的土壤湿度监测【完结篇】
  6. OA办公系统是如何提升企业办公效率的?
  7. IOS 内购IAP 自动订阅收据验证返回结构体
  8. Matlab 网格剖分程序DistMesh函数指南
  9. 星志远电商:拼多多头像如何保存?
  10. 总裁面对面压轴秀:且听黄飞说全渠道…