lazysdk 0.1.67__py3-none-any.whl → 0.1.68__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
lazysdk/lazyfile.py CHANGED
@@ -97,6 +97,7 @@ def download(
97
97
  size_limit: int = None,
98
98
  range_start: int = None,
99
99
  range_end: int = None,
100
+ overwrite: bool = False
100
101
  ):
101
102
  """
102
103
  实现文件下载功能,可指定url、文件名、后缀名、请求头、文件保存路径
@@ -109,6 +110,7 @@ def download(
109
110
  :param size_limit:尺寸限制
110
111
  :param range_start:开始位置
111
112
  :param range_end:结束位置
113
+ :param overwrite: 覆盖
112
114
  :return:
113
115
  """
114
116
  if not headers:
@@ -192,6 +194,9 @@ def download(
192
194
  time_start = time.time() # 获取下载开始时间
193
195
  is_finish = False
194
196
 
197
+ if overwrite and os.path.exists(path_local):
198
+ delete(file=path_local)
199
+
195
200
  with open(path_local, "ab") as f: # wb新建文件,a追加
196
201
  for chunk in response.iter_content(chunk_size=chunk_size):
197
202
  try:
@@ -261,26 +266,36 @@ def safe_download(
261
266
  range_start=None,
262
267
  range_end=None
263
268
  ):
269
+ overwrite = False
270
+ overwrite_range_start = copy.deepcopy(range_start)
264
271
  while True:
265
- download_response = download(
266
- url=url,
267
- filename=filename,
268
- suffix_name=suffix_name,
269
- headers=headers,
270
- path=path,
271
- proxies=proxies,
272
- size_limit=size_limit,
273
- range_start=range_start,
274
- range_end=range_end
275
- )
276
- if download_response.get('is_finish') is True:
277
- local_file_dir = download_response.get('file_dir')
278
- return local_file_dir
279
- else:
280
- print(':( 下载中断')
281
- range_start = download_response.get('temp_size')
272
+ try:
273
+ download_response = download(
274
+ url=url,
275
+ filename=filename,
276
+ suffix_name=suffix_name,
277
+ headers=headers,
278
+ path=path,
279
+ proxies=proxies,
280
+ size_limit=size_limit,
281
+ range_start=range_start,
282
+ range_end=range_end,
283
+ overwrite=overwrite
284
+ )
285
+ if download_response.get('is_finish') is True:
286
+ local_file_dir = download_response.get('file_dir')
287
+ return local_file_dir
288
+ else:
289
+ print(':( 下载中断')
290
+ range_start = download_response.get('temp_size')
291
+ time.sleep(1)
292
+ print('将继续下载(断点续传)...')
293
+ overwrite = False
294
+ except:
295
+ print(':( 下载中断,将重新下载')
282
296
  time.sleep(1)
283
- print('将继续下载(断点续传)...')
297
+ overwrite = True
298
+ range_start = copy.deepcopy(overwrite_range_start)
284
299
 
285
300
 
286
301
  def read(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lazysdk
3
- Version: 0.1.67
3
+ Version: 0.1.68
4
4
  Summary: 基于Python的懒人包
5
5
  Home-page: https://gitee.com/ZeroSeeker/lazysdk
6
6
  Author: ZeroSeeker
@@ -5,7 +5,7 @@ lazysdk/lazybase64.py,sha256=8jtuH9S1jICXpzxhRLe7xNur_o9TWbT1BRmTshZWYh0,669
5
5
  lazysdk/lazydict.py,sha256=uPc0YtLrFtBskLooChUbjapfjJ27HNG92cFRqGiTxdQ,7636
6
6
  lazysdk/lazyenv.py,sha256=P6HjO9cbBPzHD_Vs-Ww_GThDq-h9Wn31VSiu9OzTNWI,3024
7
7
  lazysdk/lazyexcel.py,sha256=r8_VbCzB1dRhMbK4Dwk-cr5keJCo6AV4r8SYe4O5y6k,15129
8
- lazysdk/lazyfile.py,sha256=FZo898FsEUlHaS5ALbFPGHQQDtmBngYb2SJiVBW4Qk8,19865
8
+ lazysdk/lazyfile.py,sha256=zif3K5hm6CwLI73fJEpnynA1ZHg5EloFfyP_fBMKd9s,20434
9
9
  lazysdk/lazyflask.py,sha256=VUhJqtNz_evVyGOS40FKkkQWWrqGEUZ26cv1RQxS388,727
10
10
  lazysdk/lazyhtml.py,sha256=vTtiLPoAhWMzXsDBFsF0DoFSsKbfmuEPjPMOZI_n6ag,1867
11
11
  lazysdk/lazyid.py,sha256=pEmRpN78-6vdz4hzLxgoCSHJw6gvnOVQyNjqusZZLQE,607
@@ -26,7 +26,7 @@ lazysdk/lazyurl.py,sha256=N89QLK2A6vXr9gqp-9vnk9RXv_fOjw171lVl9eEoxtE,1550
26
26
  lazysdk/lazywebhook.py,sha256=HwJIZ5j3wUpnEfPkFY-Xq9T_9xdhCJ71dYsWNX22_3Y,8386
27
27
  lazysdk/lazywifi.py,sha256=FOvLPTcb6BQE6D8kjfB0TLpfgGxw8jqC3vZbTs6LbD4,716
28
28
  lazysdk/showdata.py,sha256=v9TrDWrLl0Fn2JzDzfiISYlZS3uumIXpm9Dpix2XAXg,1678
29
- lazysdk-0.1.67.dist-info/METADATA,sha256=UZai6AhARmYF0Lwq2D4_Y1OBrqNmOUZdTXVoh6GF6Cc,1775
30
- lazysdk-0.1.67.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
31
- lazysdk-0.1.67.dist-info/top_level.txt,sha256=--bGS42ZHUhVeO83y1wfvKFg6OjkTLxQ4V4riqPQljY,8
32
- lazysdk-0.1.67.dist-info/RECORD,,
29
+ lazysdk-0.1.68.dist-info/METADATA,sha256=6bEOCJbbfOnTCu3GvljIvEjtSZujef9RkXztE2ukkxk,1775
30
+ lazysdk-0.1.68.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
31
+ lazysdk-0.1.68.dist-info/top_level.txt,sha256=--bGS42ZHUhVeO83y1wfvKFg6OjkTLxQ4V4riqPQljY,8
32
+ lazysdk-0.1.68.dist-info/RECORD,,