ps4第二屏幕python库

pyps4-homeassistant的Python项目详细描述


PlayStation 4控制台的Python控件。

|构建状态pypiversion pypipyhonversions

说明

基于node.js包ps4 waker的完整python实现。 这是ps4第二屏幕应用程序的非正式api。

**此模块正在beta开发中,将在1.0.0版的pypi中以新名称重新发布。在此之前,可能会进行破坏性更改和主要代码修订,以建立和修订此模块的大部分框架。

兼容性

测试时间: Python3.5/3.6/3.7

安装

要安装,请运行:

。代码::bash

pip install pyps4-homeassistant

协议

udp用于获取状态更新和检索用户凭据。TCP用于向PS4控制台发送命令。

端口

PS4监听端口987(私有)以获取用户PSN凭据。 如果没有访问权限,则必须在python路径上运行命令。 这是因为您不需要sudo/root特权来运行,尽管您可以作为sudo运行,但不建议这样做。

示例:

。代码::bash

sudo setcap 'cap_net_bind_service=+ep' /usr/bin/python3.5

用法

API应该像下面的示例一样在开始时被访问。

大多数函数都可以从高级ps4对象访问。您需要传入PS4的IP地址和PSN凭据。

此模块中有几个异步/异步协同路由函数。应该使用异步循环访问这些函数。

ps4对象/类有两个版本:ps4()和ps4async()。 区别在于ps4()类使用同步套接字(socket.socket),而ps4async()类使用异步传输和协议。如果使用异步版本,则需要运行异步事件循环。

PS4类()

。代码::python

import pyps4_homeassistant

pyps4_homeassistant.ps4.Ps4("192.168.0.2", "YourCredentials")

类ps4async()

。代码::python

import pyps4_homeassistant

pyps4_homeassistant.ps4.Ps4Async("192.168.0.2", "YourCredentials")

获取凭据

您的PSN凭据可以通过运行以下命令生成:

。代码::python

creds = pyps4_homeassistant.credential.Credentials()

YourCredentials = creds.start()

这将启动凭据服务并返回PSN帐户的凭据。要做到这一点,你需要为Android或iOS开发PS4秒屏应用程序。使用应用程序中的帐户登录并启动服务后,请刷新应用程序中的设备并选择名为“家庭助理”的设备。

封面艺术问题

如果你发现找不到媒体艺术。请张贴一个问题与您的地区,国家,游戏名称,游戏的ID。

待办事项列表:

  • 将TCP和UDP函数移植到Asyncio。

学分:

感谢hthiery用python编写底层socket协议。https://github.com/hthiery/python-ps4

参考文献:

。_ PS4唤醒器:https://github.com/dhleong/ps4-waker

。|构建状态图像:https://travis-ci.org/ktnrg45/pyps4-homeassistant.png?branch=master :目标:https://travis-ci.org/ktnrg45/pyps4-homeassistant ……| pypiversion图像:https://badge.fury.io/py/pyps4-homeassistant.svg :目标:http://badge.fury.io/py/pyps4-homeassistant ……| Pypipythonversions图像:https://img.shields.io/pypi/pyversions/pyps4-homeassistant.svg :alt:python版本 :目标:http://badge.fury.io/py/pyps4-homeassistant

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Swagger 2.8.0无法生成apidocs   java内置图像捕获脚本/引擎/解决方案   java通过Android Intent附加多个文件,可以使用一个文件,但不能使用多个文件   java如何使多播程序在不同网络上的计算机之间工作?   java JPA是适合这种场景的ORM吗?   一个事务中的java删除和选择操作   如何在java中使用post方法发送url编码的数据   JavaXSLT在Saxon中生成带有未声明名称空间前缀的输出。错误XTSE1430:命名空间前缀exsl未声明   java原因:安卓apt插件与Android Gradle插件不兼容。请改用“annotationProcessor”配置   arraylist Java迭代列表   java无需id/名称即可自动登录网站   类Java构造函数在不同类中的用法   java使用执行器的优势。newSingleThreadExecutor()   为Java servlet创建服务器端方法   c#DataInputStream在Android中只接收2048字节的数据吗?   java无法检测MIUI(小米)的wifi助手设置是否开启   java从另一个类调用主变量   数组中total的java排序   java如何将我的方法从我的子类使用到我的主类中?   Java C比较数组值并查找最近的