吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 266|回复: 4
收起左侧

[经验求助] python第三方下载库求助

[复制链接]
不忘记你的眼睛 发表于 2024-10-31 21:01
88吾爱币
各位大佬,有没有好用的第三方下载库呢,是C端GUI的问题,我用DrissionPage的对象返回下载进度,不能直接用于QProgress的setValue,但是自己封装requests又显得重复造轮子,百度也没找到其他的下载库。
有无大佬解惑,还是说我DrissionPage使用方法错误导致返回的不是正确的浮点值?

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Satifer 发表于 2024-11-5 11:03
https://drissionpage.cn/download/browser/
可以看看官方例子,感觉是类型转换不正确,发发完整代码出来看看
 楼主| 不忘记你的眼睛 发表于 2024-11-8 20:49
Satifer 发表于 2024-11-5 11:03
https://drissionpage.cn/download/browser/
可以看看官方例子,感觉是类型转换不正确,发发完整代码出来 ...

[Python] 纯文本查看 复制代码
f = download_file()
f.add(file_url=url,goal_path=download_path)
print(f.rate)
self._signal_bus.setting_download_file_set_progress.emit(f.rate)
logger.info(f"{f.file_name} 下载完成")

这个,不管是print还是信号传递的.都是None
 楼主| 不忘记你的眼睛 发表于 2024-11-8 20:54
Satifer 发表于 2024-11-5 11:03
https://drissionpage.cn/download/browser/
可以看看官方例子,感觉是类型转换不正确,发发完整代码出来 ...

而且根据官方文档,加了show_msg=True之后,print(f.rate)有值了,但是他是console打印且阻塞的,最后信号激活过去就是100.
而用requests模块就会一直回调信号方法,展现过程进度
[Python] 纯文本查看 复制代码
            with requests.get(download_url, stream=True, timeout=10) as response:
                response.raise_for_status()  # 如果请求返回了一个错误状态,将引发HTTPError
                total_size_in_bytes = int(response.headers.get('content-length', 0))
                chunk_size = 1024  # 1KB per chunk
                progress_bar_size = total_size_in_bytes / 100

                # 以二进制模式打开文件
                with open(file_name, "wb") as file:
                    for chunk in response.iter_content(chunk_size=chunk_size):
                        if chunk:  # 确保不处理keep-alive新块
                            file.write(chunk)
                            self.update_progress.emit(int((file.tell() / progress_bar_size)))
NCBM 发表于 2024-11-18 00:23
不忘记你的眼睛 发表于 2024-11-8 20:49
[mw_shl_code=python,true]f = download_file()
f.add(file_url=url,goal_path=download_path)
print(f ...

大概看了一下,似乎是追踪的对象不对。f.add(...) 的返回值才是当前任务的状态对象,应该用 task = f.add(...) 然后追踪 task.rate 而不是 f.rate。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 14:24

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表