创建main.py
import requests
import base64
from lxml import etree
from fontTools.ttLib import TTFont
def get_data_font(page):
headers = {
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",
}
url = "https://match.yuanrenxue.cn/api/match/7"
params = {
"page": page
}
resp = requests.get(url, headers=headers, params=params)
resp_json = resp.json()
data_list = resp_json["data"]
#获取字体加密数据并保存
font_file = base64.b64decode((resp_json['woff']))
with open('match_07_.ttf', 'wb') as f:
f.write(font_file)
#转换格式 : ttf-->xml 方便观察
font_obj = TTFont('match_07_.ttf')
font_obj.saveXML('match_07_.xml')
return data_list
def parse_data(data_list, page):
#构造on的映射字典
xml = etree.parse('match_07_.xml')
uni_to_on = dict()
for obj in xml.xpath('//TTGlyph'):
on = obj.xpath('.//pt/@on')
value = ''.join(on)
key = obj.xpath('.//@name')[0]
uni_to_on[key] = value
# print(uni_to_on)
#修改机密数字操作
yyq = 1
for data in data_list:
info = data['value'].split(' ')[:-1]
info = [i.replace('&#x','uni') for i in info]
# print(info)
data_end = ['0'] * len(info) #创建空列表
for index in range(len(info)):
data_end[index] = on_to_num[uni_to_on[info[index]]]
all_data.append(''.join(data_end))
# print(data_end)
name_data.append(name[yyq + (page - 1) * 10])
yyq += 1
if __name__ == '__main__':
on_to_num = {
# '111' : '.notdef',
'10100100100101010010010010' : '0',
'1001101111' : '1',
'100110101001010101011110101000' : '2',
'10101100101000111100010101011010100101010100' : '3',
'111111111111111' : '4',
'1110101001001010110101010100101011111' : '5',
'10101010100001010111010101101010010101000' : '6',
'1111111' : '7',
'101010101101010001010101101010101010010010010101001000010' : '8',
'10010101001110101011010101010101000100100' : '9',
}
all_data = []
name_data = []
name = ['极镀ギ紬荕', '爷灬霸气傀儡', '梦战苍穹', '傲世哥', 'мaη肆風聲', '一刀メ隔世', '横刀メ绝杀', 'Q不死你R死你', '魔帝殤邪', '封刀不再战', '倾城孤狼', '戎马江湖', '狂得像风', '影之哀伤', '謸氕づ独尊', '傲视狂杀', '追风之梦', '枭雄在世', '傲视之巅', '黑夜刺客', '占你心为王', '爷来取你狗命', '御风踏血', '凫矢暮城', '孤影メ残刀', '野区霸王', '噬血啸月', '风逝无迹', '帅的睡不着', '血色杀戮者', '冷视天下', '帅出新高度', '風狆瑬蒗', '灵魂禁锢', 'ヤ地狱篮枫ゞ', '溅血メ破天', '剑尊メ杀戮', '塞外う飛龍', '哥‘K纯帅', '逆風祈雨', '恣意踏江山', '望断、天涯路', '地獄惡灵', '疯狂メ孽杀', '寂月灭影', '骚年霸称帝王', '狂杀メ无赦', '死灵的哀伤', '撩妹界扛把子', '霸刀☆藐视天下', '潇洒又能打', '狂卩龙灬巅丷峰', '羁旅天涯.', '南宫沐风', '风恋绝尘', '剑下孤魂', '一蓑烟雨', '领域★倾战', '威龙丶断魂神狙', '辉煌战绩', '屎来运赚', '伱、Bu够档次', '九音引魂箫', '骨子里的傲气', '霸海断长空', '没枪也很狂', '死魂★之灵']
for page in range(1, 6):
data_list = get_data_font(page)
# print(data_list)
parse_data(data_list, page)
print(all_data)
print(name_data)
max_index = all_data.index(max(all_data))
print(name_data[max_index])
1772



被折叠的 条评论
为什么被折叠?



