I j'ldZddlmZmZmZmZddlmZddlmZm Z m Z ddl mZ ddl Z eedZd!d Zd Zd Zd ZdZd"dZdZeddZeddgdZeddgdZeddZdZedkreddd dSdS)#u 积分抽奖 Web 应用 )Flaskrequestrender_template_stringjsonify)datetime)DecimalInvalidOperation ROUND_HALF_UP)rNstatic) static_folderctj||pi}tj||5}|}dddn #1swxYwY|ddS)Nheaders)timeoutgbkignore)errors) urlrequestRequesturlopenreaddecode)urlrrreqrespraws /home/home_share/lottery/app.py _fetch_textrs  S'-R 8 8 8C  C 1 1 1Tiikk ::eH: - --sAAActdddi}i}tjd|D]\}}|d}t |dkrT|drL|d|dt |d kr|d nd t |d kr|d nd d ||<d |vsd|vrt dd|d d|dd|dS)Nz+https://qt.gtimg.cn/q=s_sh000001,s_sz399001 User-Agent Mozilla/5.0rz!v_s_(sh000001|sz399001)="([^"]*)"~namevaluechangepercentsh000001sz399001u腾讯行情返回格式异常u 腾讯行情r+source shangzheng shenzhengitemsrrefindallsplitlen ValueErrortextvaluescodepayloadpartss rfetch_tencent_indicesrAs 5}-   DF$H$OO g c"" u::>>eAh>aq&)%jj1nn%(("'*5zzA~~5882 F4L :V#;#;9::: Z(1J'0   ctdddd}i}tjd|D]\}}|d}t |dkrT|drL|d |dt |d kr|d nd t |d kr|d nd d ||<d|vsd|vrt dd|dd|dd|dS)Nz/https://hq.sinajs.cn/list=s_sh000001,s_sz399001r"zhttps://finance.sina.com.cn/)r!Refererrz&hq_str_s_(sh000001|sz399001)="([^"]*)",r%rr'r$r)r.r/u新浪行情返回格式异常u 新浪行情r+r0r5r;s rfetch_sina_indicesrG.s 9'5     DF$MtTT g c"" u::>>eAh>aq&)%jj1nn%(("'*5zzA~~5882 F4L :V#;#;9::: Z(1J'0   rBcFg}ttfD]o} |}tjd|d<|cS#t $r)}||jd|Yd}~hd}~wwxYwtd |)Nz%Y-%m-%d %H:%M:%S fetched_atz: z; ) rArGrnowstrftime Exceptionappend__name__ RuntimeErrorjoin)rfetcherdataexcs r fetch_indicesrTJs F)+=>88 8799D!)!8!89L!M!MD KKK 8 8 8 MMW-6666 7 7 7 7 7 7 7 7 8 tyy(( ) ))s4A  A>A99A>cz tt|tt|z}n"#t$r}t d|d}~wwxYw|tdt }t|d}|S)Nu'指数格式不正确,请输入数字z0.0001)roundingf)rstrstripr r:quantizer format)r2r3productrS product_strs rformat_index_productr^VsM#j////1122WS^^=Q=Q=S=S5T5TT MMMBCCLMwx00=IIG#&&K sAA A?*A::A?c|s&tjd}dt|vrt|d}t |dkr#|dr|ddnd}t |dkr#|dr|ddnd}nd}d}g}t||}|dd|d||d| d d }|dd |d |d|d d d} |dd|d| d| dd} | dd| ddg} | dd| dd| ddg} dtdD} |dd|dd|g}|dd| | | | |||||d|dd d! | | | | | |||||d|dd ||||d"d# S)$u 计算中奖号码 shangzheng: 上证指数(如 2025.50) shenzheng: 深证成指(如 7217.65) draw_date: 开奖日期,格式 YYYY-MM-DD 或 YYYY-MM z%Y-%m-%d-r%rF01u上证指数 × 深证成指u × )stepdescformularesult.r'u去除小数点u → 去除"."Nr$u数字倒序排列u → 倒序rr&r(r  c2g|]}t|dzS)r&)rX).0is r z calc_lottery..s" + + +ASVVaZ + + +rB XXXu提取各等奖号码u月u日)monthdaydate_str) rbrcprize1prize2prize3luckyhappy happy_day date_info)r2r3 draw_date) baserurvrwrxryrzr{steps raw_input) rrJrKrXr8r9zfillr^rMreplacerange)r2r3r|r@rrrsr~r]product_no_dot reversed_strrurvrwrxhappy_patternss r calc_lotteryras 8LNN++J77  c)nnI$$S))%(ZZ!^^a^aq!!!d#&u::>>eAh>eAhnnQD E'z9==K LL/ 11i11 !((b11N LL!!111 "$$B$'L LL$$111 !A# F1Q3ac!2 3F1Q3ac!2L14E FF + +r + + +Ejjj*c***j3jj9N LL'$S>S>S3>S>S>STT     $S>S>S3>S>S>STT$.YU^__   rBc|dddd}d|dD}g}|D]X}tdt|dD]7}|||dz}t|dkr||8Y|d}|d } |d } |d } |d } g} |D]}|gd }||kr|dd|| vr|dd|| vr|dd|| vr|dd|dd| ks|dd| ks|dd| kr|dd|drd|d<nd|d<| || S)uY 验证用户号码是否中奖 user_numbers: 如 "9613,9483,7484,8628,5208"  r'u,rEc^g|]*}||+S)rY)rlcs rrnz!check_lottery..s- < < <1!'')) rmchunkrurvrwrxrzmatchednumhits r check_lotteryrs   sB ' ' / /s ; ;C < < # < < 积分开奖台
Index Lottery Console

积分开奖台

上证指数 × 深证成指,倒序取号,快速核验。

开奖核验

号码留空时只计算中奖号;填写号码时自动逐号比对。
填入指数后即可计算;填写抽奖号码后会显示逐号命中结果。
__main__z0.0.0.0iF)hostportdebug)Nr r)__doc__flaskrrrrrdecimalrr r urllibrr6rNapprrArGrTr^rrrouterrrrrrunrrBrrsBAAAAAAAAAAA<<<<<<<<<<((((((  eHH---....28 * * *UUUUp***^31117VH%% * *&% * 8fX&&**'&*,:L  ^ zGGUG33333rB