API参考文档
📖 目录
核心类API
KL8DataFetcher
模块:data_fetcher.py
功能:快乐8数据获取和管理
方法
##### fetch_kl8_data(max_records=9999)
获取快乐8开奖数据
参数:
max_records(int): 最大记录数,默认9999
返回:
pd.DataFrame或None
示例:
fetcher = KL8DataFetcher()
df = fetcher.fetch_kl8_data(max_records=100)
SerialConverter
模块:serial_converter.py
功能:序列号转换和分析
方法
##### convert_to_serial(numbers)
将开奖号码转换为序列号
参数:
numbers(list): 开奖号码列表
返回:
dict: 序列号映射
##### analyze_serial_position(history_df, serial_num)
分析序列号位置规律
参数:
history_df(DataFrame): 历史数据serial_num(int): 序列号(1-20)
返回:
dict: 分析结果
数据分析API
PartitionAnalyzer
模块:enhanced_features.py
功能:分区统计分析
方法
##### analyze_partition(numbers, partition_type='四区')
分析当前期分区分布
参数:
numbers(list): 开奖号码partition_type(str): 分区类型('四区'/'五区')
返回:
dict: 各区分布数据
##### analyze_partition_trend(history_df, last_n=50)
分析分区趋势
参数:
history_df(DataFrame): 历史数据last_n(int): 分析期数
返回:
dict: 趋势数据
##### predict_next_partition(trend, partition_type)
预测下期分区
参数:
trend(dict): 趋势数据partition_type(str): 分区类型
返回:
dict: 预测结果
##### smart_select_by_zone(trend, partition_type, pick_count=10, strategy='balanced')
基于分区智能选号
参数:
trend(dict): 趋势数据partition_type(str): 分区类型pick_count(int): 选号数量strategy(str): 策略('balanced'/'hot_cold'/'dantuo')
返回:
dict: 选号结果
OmissionLayer
模块:enhanced_features.py
功能:遗漏分层分析
方法
##### calculate_omission(history_df)
计算遗漏值
参数:
history_df(DataFrame): 历史数据
返回:
dict: 遗漏数据
##### classify_layers(omission_data)
遗漏分层
参数:
omission_data(dict): 遗漏数据
返回:
dict: 分层结果(热号/温号/冷号/极冷)
##### smart_select(layers, omission_data, pick_count=10, strategy='balanced')
智能选号
参数:
layers(dict): 分层结果omission_data(dict): 遗漏数据pick_count(int): 选号数量strategy(str): 策略
返回:
list: 推荐号码
##### get_omission_warning(omission_data, threshold=15)
遗漏预警
参数:
omission_data(dict): 遗漏数据threshold(int): 预警阈值
返回:
list: 预警列表
PatternAnalyzer
模块:enhanced_features.py
功能:形态分析
方法
##### analyze_patterns(numbers)
分析号码形态
参数:
numbers(list): 开奖号码
返回:
dict: 形态数据(连号/同尾/奇偶/大小等)
##### analyze_pattern_frequency(history_df, last_n=100)
形态频率统计
参数:
history_df(DataFrame): 历史数据last_n(int): 统计期数
返回:
dict: 频率统计
CooccurrenceRecommender
模块:enhanced_features.py
功能:共现推荐
方法
##### recommend_by_seed(seed_numbers, pick_count=10)
基于种子号码推荐
参数:
seed_numbers(list): 种子号码pick_count(int): 推荐数量
返回:
list: 推荐号码
##### get_cooccurrence(number, top_n=15)
获取共现关系
参数:
number(int): 号码top_n(int): 返回数量
返回:
list: 共现号码列表
推荐系统API
DanmaRecommender
模块:enhanced_features.py
功能:胆码推荐
方法
##### recommend_danma(omission_data, df, dan_count=3, add_randomness=True)
推荐胆码
参数:
omission_data(dict): 遗漏数据df(DataFrame): 历史数据dan_count(int): 胆码数量add_randomness(bool): 是否添加随机性
返回:
list: 胆码推荐列表
##### generate_danma_report(omission_data, df, dan_count=3)
生成胆码推荐报告
参数:
omission_data(dict): 遗漏数据df(DataFrame): 历史数据dan_count(int): 胆码数量
返回:
str: 推荐报告
MultiPlayRecommender
模块:enhanced_features.py
功能:多玩法推荐
方法
##### recommend_for_play(play_name, omission_data, df, add_randomness=True)
为指定玩法推荐
参数:
play_name(str): 玩法名称('选一'到'选十')omission_data(dict): 遗漏数据df(DataFrame): 历史数据add_randomness(bool): 是否添加随机性
返回:
dict: 推荐结果
##### generate_multi_play_report(omission_data, df)
生成多玩法推荐报告
参数:
omission_data(dict): 遗漏数据df(DataFrame): 历史数据
返回:
str: 推荐报告
NumberKiller
模块:enhanced_features.py
功能:杀号推荐
方法
##### generate_kill_report(omission_data, df)
生成杀号报告
参数:
omission_data(dict): 遗漏数据df(DataFrame): 历史数据
返回:
str: 杀号报告
机器学习API
MLAnalyzer
模块:ml_analyzer.py
功能:机器学习分析
方法
##### analyze_number_clustering(df, n_clusters=4)
号码聚类分析
参数:
df(DataFrame): 历史数据n_clusters(int): 聚类数量
返回:
str: 聚类分析报告
##### analyze_association_rules(df, min_support=0.1)
关联规则挖掘
参数:
df(DataFrame): 历史数据min_support(float): 最小支持度
返回:
str: 关联规则报告
##### predict_with_lstm(df, lookback=30)
LSTM时间序列预测
参数:
df(DataFrame): 历史数据lookback(int): 回溯期数
返回:
str: LSTM预测报告
工具函数API
AdvancedAnalyzer
模块:advanced_analyzer.py
功能:高级分析
方法
##### generate_ac_report(df, last_n=50)
AC值分析报告
参数:
df(DataFrame): 历史数据last_n(int): 分析期数
返回:
str: AC值报告
##### generate_sum_report(df, last_n=50)
和值走势报告
参数:
df(DataFrame): 历史数据last_n(int): 分析期数
返回:
str: 和值报告
##### generate_tail_report(df, last_n=50)
尾数分布报告
参数:
df(DataFrame): 历史数据last_n(int): 分析期数
返回:
str: 尾数报告
##### recommend_by_ac_value(df, pick_count=10)
基于AC值推荐
参数:
df(DataFrame): 历史数据pick_count(int): 推荐数量
返回:
str: 推荐报告
LotteryTools
模块:lottery_tools.py
功能:实战工具
方法
##### filter_combinations(df)
缩水过滤
参数:
df(DataFrame): 历史数据
返回:
str: 过滤报告
##### generate_rotation_matrix_with_numbers(numbers, pool_size, pick_count, guarantee)
旋转矩阵生成
参数:
numbers(list): 号码池pool_size(int): 池大小pick_count(int): 选号数guarantee(str): 保证条件
返回:
str: 矩阵报告
##### generate_dantuo(df, dan_count=3, tuo_pool_size=12)
智能胆拖生成
参数:
df(DataFrame): 历史数据dan_count(int): 胆码数量tuo_pool_size(int): 拖码池大小
返回:
str: 胆拖报告
DataQuerier
模块:enhanced_features.py
功能:数据查询
方法
##### generate_query_report(df, issue=None, limit=10)
生成查询报告
参数:
df(DataFrame): 历史数据issue(str): 期号(可选)limit(int): 查询期数
返回:
str: 查询报告
DataComparator
模块:enhanced_features.py
功能:数据对比
方法
##### generate_comparison_report(issue1, issue2, numbers1, numbers2)
生成对比报告
参数:
issue1(str): 期号1issue2(str): 期号2numbers1(list): 号码1numbers2(list): 号码2
返回:
str: 对比报告
配置常量
config.py
应用配置:
APP_NAME = "快乐八智能分析选号器"
APP_VERSION = "1.1"
APP_AUTHOR = "摸球校尉陈八七"
游戏规则:
KL8_MIN_NUMBER = 1
KL8_MAX_NUMBER = 80
KL8_DRAW_COUNT = 20
KL8_TOTAL_NUMBERS = 80
玩法配置:
KL8_GAME_TYPES = {
'选一': {'pick': 1, 'match_rewards': {1: 4.6}},
'选二': {'pick': 2, 'match_rewards': {2: 19}},
...
}
工具函数
format_numbers(numbers)
格式化号码显示
参数:
numbers(list): 号码列表
返回:
str: 格式化字符串
示例:
format_numbers([1, 5, 15]) # 返回 "01, 05, 15"
copy_to_clipboard(root, text)
复制到剪贴板
参数:
root(Tk): Tkinter根窗口text(str): 文本内容
返回:
bool: 是否成功
API文档版本:v1.1
最后更新:2026-04-17