我正在将我的Twitch bot从Python 2.7移植到Python 3.5.我一直收到错误:
a bytes like object is required not 'str'在下面的代码的第二行.
twitchdata = irc.recv(1204)
data = twitchdata.split(":")[1]
twitchuser = data.split("!")[0]
twitchmsg = twitchdata.split(":")[2]
chat = str(twitchuser) +": "+ str(twitchmsg)
print(chat) #prints chat to console
Run Code Online (Sandbox Code Playgroud) Twitch引入了一项功能,当您打开流页面并导航到网站的其他部分时,可以让视频在左下角继续播放而不会中断.这甚至在按下浏览器中的后退按钮时起作用,并且仅在关闭选项卡或手动键入要转到的URL时中断(例如https://www.twitch.tv/directory/discover).
我一直试图弄清楚这是怎么做的.该视频嵌入到具有"js-player-persistent"类的div中,因此我假设它与Javascript有关并从会话存储中获取数据,但我不确定这需要多少努力才能具体.
谢谢你的帮助!
我想制作一个Unity3D应用程序,在其中可以观看当前的Twitch.tv直播.
我不确定这是否可行,例如,twitch api(https://github.com/justintv/twitch-api)
我知道Unity3D中的视频纹理,我知道如何使用默认的twitch api基础知识,但我不知道如何将运行的抽搐流集成到我的应用程序中.
如果有可能,有人可以给我一个暗示吗?
非常感谢和最好的问候Meph
我正在用 Python 构建一个 Discord 机器人,并希望从 Twitch.tv 的 API(请参阅Webhooks 指南和Webhooks 参考)接收 HTTP 请求(订阅事件,例如 X 流媒体已经上线)并基于 HTTP 的内容( POST 或 GET)从 Twitch 收到的请求,在 Discord 机器人上做一些事情,例如:在文本频道上输出一条消息。
我正在使用discord.py Python Discord API/Library。
我调查了这个问题,发现Flask似乎是一个很好的极简主义选择,让网络服务器接收这些请求。
我应该先说我对 Python 非常陌生,而且我以前从未使用过 Flask。
现在。问题是我似乎无法找到在我的不和谐机器人内部运行 Flask 服务器的方法。
我尝试将这个简单的代码添加到我的 discord.py 脚本中:
from flask import Flask, request
app = Flask(__name__)
@app.route('/posts', methods=['POST'])
def result():
print(request.form['sched'])
# Send a message to a discord text channel etc...
return 'Received !'
Run Code Online (Sandbox Code Playgroud)
当我运行我的 discord.py 脚本时,它看起来像这样:( 为了保持简短,去掉了一些命令和功能)
import discord
import …Run Code Online (Sandbox Code Playgroud) 我正在尝试为我正在处理的应用程序构建自己的客户端RTMP库.到目前为止,一切都已成功,因为我能够连接到RTMP服务器协商握手,然后发送所有必要的数据包(FCPublish Publish ETC)然后从服务器获取NetStream.Publish.Start的onStatus消息,这意味着我成功地让服务器允许我开始发布我的实时视频广播.Wireshark还确认信息(/数据打包)是正确的,因为它也正确显示.
现在我遇到麻烦的地方是RTMP Chunking,第17页和第18页的Adobe RTMP规范显示了一个消息如何分块的示例.从这个例子中我可以看出它是根据块大小(128字节)分解的.对我来说,块大小在初始连接和交换中协商,总是4096字节.因此,当我交换大于4096字节的视频数据时,我需要将消息分块,然后发送RTMP packetHeader并结合前4096字节的数据,然后发送一个小的RTMP头,即0xc4(0xc0 | packetHeaderType(0x04))结合4096字节的视频数据,直到发送了标头指定的完整数据包.然后进入一个新框架并重复相同的过程.
通过检查用不同语言编写的其他RTMP客户端示例,这似乎就是他们正在做的事情.不幸的是,我尝试传输的摄取服务器没有接收广播视频数据,他们不关闭我的连接,他们只是从不显示视频或视频是正确的任何迹象.Wireshark显示,在发送视频原子数据包之后,发送的大多数数据包都是未知(0x0)一点点,然后它们将切换到视频数据,并在显示未知(0x0)和视频数据之间进行触发.但是,如果我将有效负载最大大小限制为20000字节,Wireshark会将所有内容显示为视频数据.显然,摄取服务器不会在这种情况下显示视频,因为我正在删除大块的数据,因为它只有20k字节.
试图弄清楚出了什么问题我开始了另一个xcode项目,它允许我在我的Lan上欺骗RTMP服务器,以便我可以看到libRTMP IOS进入服务器时的数据.同样使用libRTMP,我可以记录它发送的数据包,它们似乎注入字节0xc4甚至128字节,即使我已经发送Change Chunk size消息作为服务器.当我尝试在我的RTMP客户端库中通过使用128块大小来复制它时,即使它被设置为4096字节,服务器也将关闭我的连接.但是,如果更改libRTMP以尝试转到实时RTMP服务器,它仍会在LibRTMP中打印出它正在以128的块大小发送数据包.并且服务器似乎在视频显示时接受它.当我查看RTMP服务器上的数据时,我发现它就是他们的全部.
任何人都知道会发生什么事吗?
我写广播的应用程序来twitch.tv使用C++.为此,streaming我需要知道用户流密钥,通常用户从页面获取该密钥,
http://www.twitch.tv/user_name/dashboard/streamkey
但我想通过我的应用程序使用用户名/密码来获取它.
有任何想法吗?
$.getJSON('https://api.twitch.tv/kraken/channels/' + SLoppierKitty7, function(channel) {
if (channel["stream"] == null) {
var live ="no"
} else {
var live ="yes"
}
Run Code Online (Sandbox Code Playgroud)
这是我的代码,但当我运行它时,我得到以下错误
E:\ Sloppers bot \node_modules\jQuery\lib \node-jquery.js:5 window = require('jsdom').jsdom().createWindow(); ^
TypeError:require(...).jsdom(...).createWindow不是创建时的函数(E:\ Sloppers bot \node_modules\jQuery\lib \node-jquery.js:5:39)在E:\对象的Sloppers bot \node_modules\jQuery\lib \node-jquery.js:9435:18.(E:\ Sloppers bot \node_modules\jQuery\lib \node-jquery.js:9437:2)在Module._compile(module.js:434:26)的Object.Module._extensions..js(module.js: 452:10)在Module.load(module.js:355:32)的Function.Module._load(module.js:310:12)在Module.require(module.js:365:17)的require(模块. js:384:17)在Object.(E:\ Sloppers bot\bot.js:2:9)
我该怎么办
这是我正在工作的机器人
我正在尝试在 Angular 中设置一种仅在流在线时显示 Twitch 播放器的方式,因此在文档中有此内联 HTML:
<script src= "https://player.twitch.tv/js/embed/v1.js"></script>
<div id="<player div ID>"></div>
<script type="text/javascript">
var options = {
width: <width>,
height: <height>,
channel: "<channel ID>",
video: "<video ID>",
collection: "<collection ID>",
};
var player = new Twitch.Player("<player div ID>", options);
player.setVolume(0.5);
</script>
Run Code Online (Sandbox Code Playgroud)
当然,虽然在 Angular Components 中我们不能使用 < script > 标签,而且我认为目前不可能使用 require 或 import 在我的组件 TypeScript 中使用它。
那么我将如何添加这个功能呢?我知道在我可以实际引用该脚本标签后该怎么做。
下午好。
我正在测试我公司的流媒体服务,它的工作原理类似于 twitch。
任务如下: 登录您的帐户并模拟查看流(和聊天)
我正在考虑用 selenium 编写代码。但据我所知,在这种情况下,您必须为每个线程使用自己的驱动程序。恐怕会占用太多内存。
现在的问题。这是真的?有没有办法避免这种情况?你会推荐什么方法来解决这个问题?
我只是想出了一个想法,尽量不画视频来节省资源。但是这里有一个警告,因此流媒体服务不会认为我是机器人。换句话说,我必须不断地得到它,而不是画出它。这不适用于硒。
问题如下:是否可以将登录数据发送到表单并在 Java 中以编程方式“查看”流?我应该使用哪些库?
您能否推荐必要的库以及指向我需要的功能的链接?
我正在尝试制作我自己的小不和谐机器人,它可以从 Twitch 获取信息,但我对如何使机器人循环并检查条件感到困惑。
我希望机器人每隔几秒钟循环一段代码,以检查指定的 twitch 频道是否处于活动状态。
代码
import discord
from discord.ext import commands, tasks
from twitch import TwitchClient
from pprint import pformat
client = TwitchClient(client_id='<twitch token>')
bot = commands.Bot(command_prefix='$')
@bot.event
async def on_ready():
print('We have logged in as {0.user}'.format(bot))
@bot.command()
async def info(ctx, username):
response = await ctx.send("Querying twitch database...")
try:
users = client.users.translate_usernames_to_ids(username)
for user in users:
print(user.id)
userid = user.id
twitchinfo = client.users.get_by_id(userid)
status = client.streams.get_stream_by_user(userid)
if status == None:
print("Not live")
livestat = twitchinfo.display_name + "is not …Run Code Online (Sandbox Code Playgroud) twitch ×10
javascript ×2
node.js ×2
python ×2
python-3.x ×2
angular ×1
bots ×1
chunking ×1
discord ×1
discord.py ×1
irc ×1
json ×1
key ×1
objective-c ×1
rtmp ×1
selenium ×1
stream ×1
testing ×1
twitch-api ×1
typescript ×1
wowza ×1