如何使用 Python 最快实现 1w 个 http 请求

55 天前
 gzldc

本地有一个 1w 行的 txt 文件 每一行都是单独的 payload 。要求是请求同一个 url 使用每一行 payload ,如何能做到最快。不处理响应的 respon 只要最快

补充一下:我刚接触 python 使用 aiohttp 不知道哪里有问题一秒才 10 个请求。。。

4809 次点击
所在节点    Python
53 条回复
Puteulanus
55 天前
CC 攻击的脚本?
tool2d
55 天前
异步请求可以很快,同步要等着上一条返回,肯定是慢的。
gzldc
55 天前
@Puteulanus 不是,是一个小网站的秒杀活动
tool2d
55 天前
又查了一下,好像 aiohttp 就是异步请求的库?那可能是服务器的问题了。
infun
55 天前
好歹。。。贴代码吧
molika
55 天前
asyncio.gather
deplives
55 天前
你需要一个异步 io 的库,或者随便自己写一个比如
https://gist.github.com/deplives/4b2d09421c5d0ee4aba75c69a5b9b070

本地实测请求 https://httpbin.org/status/200 1000 次只需要 2s
acidsweet
55 天前
除了网络以外,将 py 编译成 cpython 也可以提高效率应该
gzldc
55 天前
@tool2d 不是我觉得是我写的代码有问题。我其实不需要 response
gzldc
55 天前
@infun 我代码很烂 就是普通请求。确实特别慢
gzldc
55 天前
@deplives 感谢我去看看
ospider
55 天前
想问题的方向错了,人家小网站,你这不就是 DOS 攻击么,发得越快,崩得越快
tomczhen
55 天前
不需要处理响应,直接用一些抓包工具重放不就好了。
gzldc
55 天前
@ospider 网站响应倒都是正常的 抗击打能力不错。只是我这并发写得不行
gzldc
55 天前
@tomczhen 有推荐的工具吗
1iuh
55 天前
不响应, 代码里面做了什么 io 操作吗? 需求描述的不清楚。
1iuh
55 天前
哦,是我搞错了, 你是要发 1W 个 http 请求。
Maboroshii
55 天前
换 nodejs ! python 就别干这种活了
None123
55 天前
并发快 崩的更快
gzldc
55 天前
@Maboroshii 我觉得是我还不够了解 python

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1023545

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX