Source服务器、RCON、A2S、VDF、Steam Web API以及各种其他Valve产品和服务使用的Python实现。
项目描述
Python-valve
Python-valve是一个Python库,旨在提供对各种Valve产品和服务的一个统一的接口,包括
Source服务器
A2S服务器查询
RCON
Source主服务器
Steam Web API
本地Steam客户端
Valve数据格式/键值 (.vdf)
要开始使用,请使用pip安装Python-valve: pip install python-valve。
RCON示例
在这个示例中,我们连接到Source服务器的远程控制台并向它发送一个简单的echo命令。
from valve.source.rcon import RCON
SERVER_ADDRESS = ("...", 27015)
PASSWORD = "top_secret"
with RCON(SERVER_ADDRESS, PASSWORD) as rcon:
print(rcon("echo Hello, world!"))
服务器查询示例
在这个示例中,我们通过列出所有在运行地图ctf_2fort的欧洲和亚洲的《反恐精英2》服务器,以及每个服务器上按分数排序的玩家,演示了Source主服务器和A2S查询的实现。
import valve.source
import valve.source.a2s
import valve.source.master_server
with valve.source.master_server.MasterServerQuerier() as msq:
try:
for address in msq.find(region=[u"eu", u"as"],
gamedir=u"tf",
map=u"ctf_2fort"):
with valve.source.a2s.ServerQuerier(address) as server:
info = server.info()
players = server.players()
print("{player_count}/{max_players} {server_name}".format(**info))
for player in sorted(players["players"],
key=lambda p: p["score"], reverse=True):
print("{score} {name}".format(**player))
except valve.source.NoResponseError:
print "Master server request timed out!"
版本控制
Python-valve使用语义版本控制。目前,Python-valve尚未达到1.0版本的发布。因此,每个小版本都可能包含破坏性更改。因此,当在setup.py或requirements.txt中将Python-valve指定为需求时,建议指定具体的版本号。例如:python-valve==0.2.0。
测试
Python-valve使用Pytest来运行其测试套件。单元测试覆盖率始终在提高。还包括了功能测试,这些测试针对真实的Source服务器运行。
如果在处理 Python-valve,请使用以下命令安装测试依赖项并运行测试:
pip install -e .[test]
py.test tests/ --cov valve/
文档
文档使用 Sphinx 编写,并托管在 Read the Docs。
如果在处理 Python-valve,请使用以下命令安装文档依赖项,构建文档并在浏览器中打开。
pip install -e .[docs]
(cd docs/ && make html)
xdg-open docs/_build/html/index.html
Python 2
Python-valve 支持 Python 2.7!然而,请注意,Python 2.7 将在 2020 年后不再维护。Python-valve 可能 在 2020 年之前的一个重大版本中取消对 Python 2.7 的支持,以便利用新的、不向后兼容的 Python 3 功能。
强烈建议新的 Python-valve 项目使用 Python 3。
商标
Valve、Valve 标志、半条命、半条命标志、Lambda 标志、Steam、Steam 标志、团队 fortress、团队 fortress 标志、反作用力、击败之日、击败之日标志、反恐精英、反恐精英标志、Source、Source 标志、反恐精英:条件零、传送门、传送门标志、Dota、Dota 2 标志和古代防御者是 Valve 公司的商标和/或注册商标。
对这些内容的任何引用仅用于识别目的。Valve 公司与 Python-valve 或任何 Python-valve 贡献者没有任何关联。
项目详情
python-valve-0.2.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 589283d2235bd14992c2c81f98112b20b7aeac5cb72da0597fd57eea72a19c95 |
|
MD5 | 0358ec88babb2c1ef47b249b18d18355 |
|
BLAKE2b-256 | 504e4887a216bc7f562b55fbc95259d46eccdd19d682755b8d09c6d82e8f77b6 |