棋类数据库
chesstab的Python项目详细描述
Description
这个包为国际象棋比赛提供了一个数据库。
在玩游戏时,将显示包含当前位置的所有游戏的列表。
曲目游戏可以定义。当播放一个曲目游戏时,将显示包含当前位置的所有游戏的列表。曲目游戏不包括在此列表中。
象棋引擎可以用来分析位置,同时通过游戏或剧目游戏。分析可以像游戏得分一样进行。分析结果可以保存在数据库中,供以后参考。
可以定义部分位置,并显示包含与部分位置匹配的位置的所有游戏的列表。
游戏可以在pgnImport Format中键入或从文件导入。
游戏由pgn标准定义的seven standard tags索引。
游戏可以编辑或删除。
游戏可以以Export Format、Reduced Export Format或不包括注释和标志符号的导入格式输出到pgn文件。
Installation Instructions
键入
python setup.py install
在命令提示下,在当前目录中使用setup.py。
根据系统的配置,您可能需要提供python的路径和版本:
<path to python>/python<version> setup.py install
For example
C:\Python36\python setup.py install
on Microsoft Windows orpython3.6 setup.py安装
on Unix-like systems.
使用Python3.6或更高版本。
Chess Engines
支持{a16}(uci)的象棋引擎可用于分析位置。维基百科UCI entry也链接到规范。
Database Interfaces
默认的数据库接口是与python一起分发的sqlite3模块。
如果安装了sqlite3的apsw接口,则使用该接口而不是sqlite3接口。
如果安装了这些替代接口,则可以使用这些接口访问新数据库。
如果安装了这两个备选方案,chesstab将使用dptdb。
如果使用bsddb3,则必须安装bsddb3支持的Berkeley DB版本。
Fonts
chesstab包包含了国际象棋Merida、国际象棋盒、国际象棋主题和Armando H Marroquin的国际象棋Lucena字体。
这些文件可从www.enpassant.dk/chess/fonteng.htm获得,为了方便起见,相关文件已包含在此包中。
使用平台上提供的工具至少安装其中一种字体。
Run
运行此软件包的命令是:
python -m chesstab.chessgames
根据系统的配置,您可能需要提供python的路径和版本:
<path to python>/python<version> -m chesstab.chessgames
For example
C:\Python36\python -m chesstab.chessgames
on Microsoft Windows orpython3.6-m chesstab.棋类游戏
on Unix-like systems.
或者使用桌面上的工具(Microsoft Windows、GNOME、KDE,…)设置启动棋类游戏的便捷方式。
必须至少安装一个由solentware-base包支持的数据库引擎。
Notes
一个约150万个游戏的数据库将占用10到15千兆字节。
进口150万个游戏至少需要几个小时。例如,使用2GB 667MHz DDR2 SDRAM的1.8GHz CPU大约12小时,使用1GB DDR266 RAM的1.7GHz CPU大约30小时。
这些数字是使用庞大的数据库获得的:
ftp://ftp.cis.uab.edu/pub/hyatt/pgn。
使用dptdb数据库接口进行部分位置搜索总是要快得多。
当使用sqlite3、apsw或bsddb3数据库接口时,如果安装了bitarray模块,您可能会注意到部分位置搜索的响应时间会更好。
sqlite3和apsw数据库接口是等价的,但所有其他对都是不兼容的。