🦍 运行设置
本节介绍DrissionGet对象相关设置。
✅️️ 使用方法
📌 全局设置
使用DrissionGet对象的set.xxxx()方法,可对各种允许参数进行设置。
这种方法设置的参数时全局有效的,之后新建的任务会默认使用。
📌 每个任务独立设置
每次新建任务时,可设置当前项目有效的设置,覆盖全局设置。
from DrissionGet import DrissionGet
d = DrissionGet()
d.set.save_path('tmp1') # 设置全局保存路径
d.add(url, save_path='tmp2') # 创建任务时指定保存路径
📌 链式操作
多个设置可用链式操作。
from DrissionGet import DrissionGet
d = DrissionGet()
d.set.save_path('tmp1').show_msg(False).if_file_exists('skip')
✅️️ 运行设置
📌 set.driver()
此方法用于设置提供下载连接信息的页面或链接对象。
支持 DrissionPage 所有页面对象、Session对象、SessionOptions对象。
程序可从传入的对象中自动获取登录信息,如传入页面对象,还能自动设置Referer参数。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
driver |
SessionSessionOptionsChromiumPageSessionPageChromiumTabWebPageWebPageTab |
必填 | 用于提供连接信息的对象 |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.save_path()
此方法用于设置文件保存路径。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
save_path |
strPath |
必填 | 文件保存路径 |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.if_file_exists()
此方法用于设置路径存在同名文件时的处理方式。
可选'skip', 'rename', 'overwrite', 'add', 's', 'o', 'r', 'a'。
后面的字母是前面四种方式的简写。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
mode |
str |
必填 | 处理方式字符串 |
skip:跳过,不下载,简写's'overwrite:覆盖原有文件,简写'o'rename:以在后面添加序号的方式给新文件重命名,简写'r'add:在原有文件末尾追加内容,简写'a'
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.if_file_exists.xxxx()
这几个方法用于设置路径存在同名文件时的处理方式。
效果与set.if_file_exists()一致。
skip():跳过,不下载overwrite():覆盖原有文件rename():以在后面添加序号的方式给新文件重命名add():在原有文件末尾追加内容
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
示例:
📌 set.roads()
此方法用于设置可同时运行的线程数。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
num |
int |
必填 | 线程数量 |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.retry()
此方法用于设置连接失败时重试次数。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
times |
int |
必填 | 重试次数 |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.interval()
此方法用于设置连接失败时重试间隔。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
seconds |
float |
必填 | 连接失败时重试间隔(秒) |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.timeout()
此方法用于设置连接超时时间。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
seconds |
float |
必填 | 超时时间(秒) |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.split()
此方法用于设置大文件是否分块下载。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
on_off |
bool |
必填 | bool代表开关 |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.block_size()
此方法用于设置设置分块大小。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
size |
strint |
必填 | 可接收int和str形式,接收int时以字节为单位;接收str时格式有:'10b'、'10k'、'10m'、'10g'四种,不区分大小写 |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.proxies()
此方法用于设置代理地址及端口,例:'127.0.0.1:1080'。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
http |
str |
None |
http 代理地址及端口 |
https |
str |
None |
https 代理地址及端口 |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
✅️️ 显示和日志设置
📌 set.show_msg()
此方法用于设置是否打印下载信息。
add()添加的任务会打印下载结果,download()任务同步打印下载进度。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
on_off |
bool |
True |
bool代表开关 |
failed_only |
bool |
False |
是否只显示失败任务,此设置仅多线程任务生效 |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |
📌 set.log()
此方法用于将任务结果保存到日志。
| 参数名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
path |
strPath |
'DrissionGet_log.csv' |
文件路径,为None则不保存 |
failed_only |
bool |
False |
是否只记录失败任务 |
| 返回类型 | 说明 |
|---|---|
Setter |
设置对象本身 |