问题标签 [aiohttp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2242 浏览

python - 如何从 aiohttp 中的处理程序运行异步进程

我试图了解如何从 aioweb 框架内的协程处理程序运行异步进程。这是一个代码示例:

我想process从处理程序异步运行函数。有人可以提供一个我如何实现这一目标的例子。我很难理解如何在处理程序中传递/使用主事件循环并将其传递给另一个函数,该函数本身可以在其中运行异步进程。

0 投票
1 回答
965 浏览

python - 需要一个整数

我是 Python 3 的新手。我使用 Python 3.5 的 aiohttp 模块。当我运行我的项目时,出现以下错误

堆栈跟踪是:

代码是:

  • 我的代码有什么错误?
  • 我究竟做错了什么?
0 投票
3 回答
3779 浏览

python - 超时时使用Python和3 aiohttp查找重定向后的URL

我目前正在尝试审核大量重定向 URL 句柄,以确保它们的目的地仍然有效。

我正在使用 aiohttp 浏览大量数据以生成报告。

在大多数情况下,这对于识别哪个 URL 重定向不再发送到有效 URL 是很好的。但是,我真的很想知道超时的最终地址。

有任何想法吗?

0 投票
1 回答
193 浏览

elasticsearch - aiohttp 只下载正文的前 n 个字节

我们正在使用 aiohttp 将数据发布到弹性搜索服务器。此类插入的 Elastic 会为每条插入的行生成响应,这会导致大量不需要的流量返回客户端应用程序。我们想使用以下代码解决这个问题

首先我们尝试了发布方法,但从文档和带宽测量来看,它似乎也下载了整个内容。然后我们尝试了 response.close() 但我们非常不确定这是否安全,同时为其他请求保持相同的 http_session。

问题是 response.close() 是否安全以及它是否能解决我们的问题,或者是否有其他异步方式。

0 投票
1 回答
573 浏览

python - 使用 python-asyncio 时如何重载模块?

我正在使用pyinotify跟踪文件更改并尝试重载此修改文件所在的模块。但不幸的是,不是模块可能没有重载,我的变化是不可见的。

和模块中的代码文件aa.aa

或许还有别的办法,我需要改代码没得手动重新加载。

0 投票
1 回答
895 浏览

python - 浏览器取消 HLS 流,而 VLC 接受它

我通过将 MPEG-TS 流内容写入 GridFS 文件系统来录制 HSL 流。

我现在正在尝试使用aiohttps将此内容返回给浏览器SessionResponse,但由于不同的原因而失败。

当尝试使用 safari 访问 url 时,我得到了播放器 ui,但没有播放,而服务器抛出CancelledError异常,试图在已经关闭的文件上写入SessionResponse

在 Chrome 中打开 URL 会导致下载视频文件。此文件在 VLC 中播放时有效。即使使用“网络源”在 VLC 中播放 URL 也可以。

我还尝试在此直接 url 前面提供静态 m3u 播放列表,但没有运气(VLC 也可以使用直接流的播放列表插入):

我不确定如何进一步调试它,并希望得到任何帮助(如果我不清楚,请在评论中提问)。直接访问文件时文件没有在浏览器中播放,我错过了什么?将我的资源 url 嵌入到 html 视频标签中也没有帮助(显然,因为浏览器在直接访问视频时也会这样做)

有关我发送的视频内容和原始 http 共振的更多信息:

视频信息 VLC

视频信息 VLC

直接视频流 HTTP 响应(开始)

直接视频流 HTTP 响应

M3U 播放列表 HTTP 响应

M3U 播放列表 HTTP 响应

0 投票
1 回答
1687 浏览

python - 用 pytest 测试 aiohttp 和 mongo

我有一个简单的协程register,它接受登录名和密码作为后置参数,然后它进入数据库等等。我的问题是我不知道如何测试协程。

我遵循了 https://aiohttp.readthedocs.io/en/latest/testing.html中的示例。

在我开始自己编写测试之前,一切似乎都很容易。

代码 test_register.py

register.py

main.py

settings.py

然后我跑了py.test test_register.py,它卡在数据库操作上 matches = await db.users.find({'login': login}).count()

0 投票
1 回答
1688 浏览

python - 异步。动态添加协程到循环

我正在编写应用程序,它每秒扫描一次目录,检查新文件,如果它们出现 - 通过 POST 请求发送它们并执行归档。假设可以出现在目录中的文件数量可以从 10 到 100 - 我决定使用 asyncio 和 aiohttp 来同时发送请求。

代码:

所以问题是:如果我想并发发送请求,将协程添加到这样的循环中是否是一个好习惯:asyncio.ensure_future(publish_file(file))

0 投票
1 回答
1390 浏览

python-3.x - 如何使用不支持异步的库?

我正在从烧瓶转移到 aiohttp,我需要在不支持异步的 Oracle 数据库中执行一些查询。所以我想知道如何在 aiohttp 中做到这一点?

这个怎么样?

http://pastebin.com/nbWABbvK

还是有其他(正确的)方法可以做到这一点?

提前致谢!

0 投票
1 回答
2828 浏览

python-3.x - aiohttp - 套接字传输上的致命读取错误 - TimeoutError

我们使用 aiohttp 和 Python3.5 将数据发布到弹性搜索中。帖子行如下:

通常一切运行都很好,但有时会出现以下错误:

如果它只会引发异常并继续正常运行,那就没问题了。不过,在我们的例子中,这个错误似乎会导致整个 asyncio 任务(其中执行 post 请求)冻结。

我们将错误引发追踪到https://github.com/python/asyncio/blob/master/asyncio/selector_events.py#L674,随后调用call_exception_handler.

这个异常是否有可能导致_https_session无效/不可用,我们需要创建一个新的?或者我们还有什么可以做的吗?