『Python代码』生成指定前缀信用卡卡号
本文转载自 狗仔小分队 马甲简单的封装了一下。
马甲手里有一份在线生成信用卡的代码,支持定制卡号,生成有效期,CCV 等。等整理好分享给大家。
生成指定前缀的信用卡卡号,再也不用在线版啦
撸东西更方便了,开心~
函数代码
from random import Random
import copy
def completed_number(prefix, length):
"""
'prefix' is the start of the CC number as a string, any number of digits.
'length' is the length of the CC number to generate. Typically 13 or 16
"""
generator = Random()
generator.seed() # Seed from current time
ccnumber = prefix
# generate digits
while len(ccnumber) < (length - 1):
digit = str(generator.choice(range(0, 10)))
ccnumber.append(digit)
# Calculate sum
sum = 0
pos = 0
reversedCCnumber = []
reversedCCnumber.extend(ccnumber)
reversedCCnumber.reverse()
while pos < length - 1:
odd = int(reversedCCnumber[pos]) * 2
if odd > 9:
odd -= 9
sum += odd
if pos != (length - 2):
sum += int(reversedCCnumber[pos + 1])
pos += 2
# Calculate check digit
checkdigit = ((sum // 10 + 1) * 10 - sum) % 10
ccnumber.append(str(checkdigit))
return ''.join(ccnumber)
def credit_card_number(prefixList, howMany=1, length=16):
generator = Random()
generator.seed() # Seed from current time
if type(prefixList)==str:
prefixList=[[i for i in prefixList]]
if type(prefixList[0])==str:
prefixList=[[i for i in List] for List in prefixList]
result = []
while len(result) < howMany:
ccnumber = copy.copy(generator.choice(prefixList))
result.append(completed_number(ccnumber, length))
return result
调用示例
#生成前缀为'123456',1个,卡号长度16位
fakecard = credit_card_number('123456')
#生成前缀为'123456',1个,卡号长度16位
fakecard = credit_card_number('123456',1,16)
#生成前缀为'123'或'234'的信用卡卡号,共15个,卡号长度16位
fakecard = credit_card_number(['123','234'], 15,16)
简单封装
wget https://raw.githubusercontent.com/malaohu/ruyo-shell/master/credit_card_number.py python credit_card_number.py
版权声明:
作者:我是小马甲~
链接:https://51.ruyo.net/8293.html
来源:如有乐享
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
『Python代码』生成指定前缀信用卡卡号
本文转载自 狗仔小分队 马甲简单的封装了一下。
马甲手里有一份在线生成信用卡的代码,支持定制卡号,生成有效期,CCV 等。等整理好分享给大家。
生成指定前……
文章目录
关闭

共有 0 条评论