ReaJason / xhs

基于小红书 Web 端进行的请求封装。https://reajason.github.io/xhs/
MIT License
1.03k stars 295 forks source link

请问能否支持大文件分片上传 #60

Open kuroyukihime0 opened 11 months ago

kuroyukihime0 commented 11 months ago

create_video_note 时,如果文件较大,服务器会直接报错 抓包发现会分片多次上传,能否支持一下,谢谢!

ReaJason commented 10 months ago

我研究研究🤯

ReaJason commented 8 months ago

目前实现了相关代码,不过视频预览一直没成功,应该是上传还有问题 https://ros-preview.xhscdn.com/spectrum/eLlxuny9Up0GeeCmS2yhZg73Hcr0jvQIKmQL33ux1azQpmo?sign=4671caf205af8c5703b4c46e84ec72a3&t=1702478776

CleanShot 2023-12-13 at 23 12 06@2x

this-BaiShi commented 8 months ago

你好,我最近也在研究这块小红书分片上传这块,方便问一下get_upload_id具体是如何实现的吗

ReaJason commented 8 months ago

你好,我最近也在研究这块小红书分片上传这块,方便问一下get_upload_id具体是如何实现的吗

我刚上传了这部分代码

https://github.com/ReaJason/xhs/blob/e65e3d108fecc083910c47ef82f97c749800821a/xhs/core.py#L696

this-BaiShi commented 8 months ago

你好,我最近也在研究这块小红书分片上传这块,方便问一下get_upload_id具体是如何实现的吗

我刚上传了这部分代码

https://github.com/ReaJason/xhs/blob/e65e3d108fecc083910c47ef82f97c749800821a/xhs/core.py#L696

感谢,我看小红书这部分js好像没有加密,能顺着看到,关于x-s的获取 除了模拟浏览器获取有别的思路吗? 我看这块js是混淆过的,有个想法是直接把这段js down下来执行,我想试试会不会跑通。。。

ReaJason commented 8 months ago

感谢,我看小红书这部分js好像没有加密,能顺着看到,关于x-s的获取 除了模拟浏览器获取有别的思路吗? 我看这块js是混淆过的,有个想法是直接把这段js down下来执行,我想试试会不会跑通。。。

暂时还没有其他方式获取 x-s,日后有时间学习一下这块怎么弄会分享出来

this-BaiShi commented 8 months ago

感谢,我看小红书这部分js好像没有加密,能顺着看到,关于x-s的获取 除了模拟浏览器获取有别的思路吗? 我看这块js是混淆过的,有个想法是直接把这段js down下来执行,我想试试会不会跑通。。。

暂时还没有其他方式获取 x-s,日后有时间学习一下这块怎么弄会分享出来

嗯嗯 我这目前是直接那那段js down下来跑起来提供x-s获取的,分片上传这块 我也研究了一下 但是实际测试的时候报‘storage system error’,请问你这边调试的时候有遇到吗,我看代码方面的实现是类似的

Yfiegfh commented 5 months ago

我最近也在研究小红书分片上传,可以问一下具体是如何实现的吗

ReaJason commented 5 months ago

我最近也在研究小红书分片上传,可以问一下具体是如何实现的吗

目前这块代码还是不可用状态,但是我提交上去了,可以看看

https://github.com/ReaJason/xhs/blob/e65e3d108fecc083910c47ef82f97c749800821a/xhs/core.py#L723

675514037 commented 4 months ago

我把分片的大小调整后尝试了分片上传可以成功,但是也仅能支持20M以内的视频