4-3 baidu图片链接无法下载

来源:4-3 编程实践-实现单线程下载模块

慕丝2042335

2021-11-07

  1. 运行code,报错如下
download url: https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1601664371274&di=ae5fec084b994fb616a2990c11962115&imgtype=0&src=http%3A%2F%2Fattachments.gfan.com%2Fforum%2F201503%2F19%2F211608ztcq7higicydxhsy.jpg
Traceback (most recent call last):
  File "/usr/local/study_process/download_server/scheduler.py", line 21, in <module>
    Scheduler().process()
  File "/usr/local/study_process/download_server/scheduler.py", line 16, in process
    self.downloader.process(url_list)
  File "/usr/local/study_process/download_server/modules/downloader.py", line 50, in process
    return self._process_singlethread(list_)
  File "/usr/local/study_process/download_server/modules/downloader.py", line 42, in _process_singlethread
    img = self._process(url)
  File "/usr/local/study_process/download_server/modules/downloader.py", line 29, in _process
    img = parser.close()
  File "/usr/local/python3/lib/python3.9/site-packages/PIL/ImageFile.py", line 463, in close
    raise OSError("cannot parse this image")
OSError: cannot parse this image
  1. 调试发现 url 返回 500:
(Pdb) l
 23  	        print('download url: {}'.format(url))
 24  	        response = requests.get(url)
 25  	        content = response.content
 26  	        from pdb import set_trace
 27  	        set_trace()
 28  ->	        print(content)
 29
 30  	        parser = ImageFile.Parser()
 31  	        parser.feed(content)
 32  	        img = parser.close()
 33  	        img = np.array(img)
(Pdb) response.status_code
500
写回答

1回答

咚咚呛

2021-11-08

估计是图库内容进行了调整,可以从图片url列表文件中选择去掉这个图片的链接重新之行。

0
0

学透协程/进程/线程 程序员必知必会技能

程序员都需要掌握的高性能开发技术

276 学习 · 55 问题

查看课程