任意生身份z号码(最新区域划分)

任意生身份z号码(最新区域划分),第1张

概述任意生身份z号码(最新区域划分)

下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。

内存溢出小编现在分享给大家,也给大家做个参考。

import http.cookiejarimport urllib.requestimport urllib.parsefrom PIL import Imageimport gzip,re,randomclass Crawler_self:        def __init__(self):                 self.Cr_header_data = {            'Accept':'text/HTML,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8','Accept-EnCoding':'gzip,deflate,sdch','Accept-Language':'zh-CN,zh;q=0.8','Cache-Control':'no-cache','Connection':'keep-alive','Pragma':'no-cache','upgrade-insecure-requests':'1','User-Agent':'Mozilla/5.0 (windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/45.0.2454.101 Safari/537.36'            }    def Cr_get_web_List(self,re_data):   #取得网页给定规则数据列表             cer = re.compile(r'<p\s+.*?>(\d\d\d\d\d\d)<span>')        strList = cer.findall(re_data)        return strList        def Cr_get_cookies_opener(self,url_1):  #取得cookies        cj = http.cookiejar.cookieJar()        pro  = urllib.request.httpcookieProcessor(cj)        opener = urllib.request.build_opener(pro)        header = []        for key,value in self.Cr_header_data.items():  #加载请求头            elem = (key,value)            header.append(elem)        opener.addheaders = header        return opener.open(url_1)    def Cr_read_data(self,data,de_code='utf-8'):        return self.Cr_ungzip(data.read()).decode(de_code)    def Cr_ungzip(self,re_data):  #解压网页        try:            data = gzip.decompress(re_data)        except:            print('无需解压')        return data        def Cr_get_ares_List(self,url,de_code='utf-8'):        b = self.Cr_get_cookies_opener(url)        c = self.Cr_read_data(b,de_code)        ares_List = self.Cr_get_web_List(c)  #身份z前6位数字        return ares_List    class Plan_IDcard:    def __init__(self):        self.W=[7,9,10,5,8,4,2,1,6,3,7,2]            self.ID_num=[18,17,16,15,14,13,12,11,2]            self.D_CHECK=['1','0','X','9','8','7','6','5','4','3','2']        self.ID_aXw = 0            def Plan_ID_card(self,ID_1,ID_num=10): #        data = []        for each in range(ID_num):            self.ID_aXw = 0            a = '%03d'% random.randint(0,999)            ID=ID_1+a                    for i in range(len(self.W)):                self.ID_aXw = self.ID_aXw + int(ID[i])*self.W[i]                        ID_mod = self.ID_aXw % 11            a = ID + self.D_CHECK[ID_mod]            data.append(a)        print(data)                def get_year_moth_day(self,old = 10):  #获得年月日        GD_YEAR = 2015  #以2015年计算        cc = int(old)        while True:                                       dd = random.randint(1,10)            if dd%2 == 0:                cc = GD_YEAR - cc + dd   #取年            else:                cc = GD_YEAR - cc - dd            if cc >= GD_YEAR:                print('...你输的年岁^_^过少.自动取随机年岁..')                cc = 11                continue                            else:                break        dd = random.randint(1,12)      #取月        if (dd in (1,12)):            aa = random.randint(1,31)  #取日        else:                        aa = random.randint(1,30)        if dd == 2:            if (cc%4==0) and (cc%100==0):                aa = random.randint(1,29)            else:                aa = random.randint(1,28)        bb= '%04d%02d%02d' %(cc,dd,aa)        return(bb)     if __name__ == '__main__':    #最新县及县以上行政区划代码(截止2014年10月31日)    url_1 = 'http://www.stats.gov.cn/tJsj/tjbz/xzqhdm/201504/t20150415_712722.HTML'        a = Crawler_self()    c = a.Cr_get_ares_List(url_1)    while True:        get_num = input('输要获取多少个身份z:')        if get_num.isalnum() != True:            print('请输入合法的数字')            continue        get_num = int(get_num)//10        if get_num==0:            get_num = 1        year_old = input('请输入大约年龄:')                if year_old.isalnum() != True:            print('请输入合法的数字')            continue        for each in range(0,get_num):            a_a = c[random.randint(0,len(c)-1)]            dd = Plan_IDcard()            b_b = dd.get_year_moth_day(year_old)            dd.Plan_ID_card(a_a+b_b)        break           

以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

总结

以上是内存溢出为你收集整理的任意生身份z号码(最新区域划分)全部内容,希望文章能够帮你解决任意生身份z号码(最新区域划分)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1198950.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存