爬虫下载附件失败怎么办?

ID:20284 / 打印

爬虫下载附件失败怎么办?

爬虫下载附件遇到问题,无法下载附件

使用提供的代码爬取目标网站附件时,可能会遇到下载失败的问题。

问题原因

提供的代码在下载附件时使用了 requests.get 函数,该函数默认不会自动处理文件重定向。而目标网站的附件链接通常会重定向到实际的文件下载地址。因此,使用 requests.get 函数获取的响应并不是实际的文件内容。

解决方案

要解决这个问题,可以更改代码中下载附件的代码如下:

def download(fileName, url, path):     """下载附件"""     try:         print('下载中,请耐心等待...')         # 使用 `requests.head` 函数获取重定向后的文件下载地址         res = requests.head(url, allow_redirects=True)         # 将 `Location` 头中的重定向地址作为文件的实际下载地址         url = res.headers['Location']         # 使用 `requests.get` 函数获取文件内容         r = requests.get(url)         with open(path + fileName, "wb") as File:             File.write(r.content)         print(fileName, '下载Ok')     except:         print(fileName, '下载失败')

这样,代码将能够自动处理附件链接的重定向,并成功下载附件。

上一篇: Python 虚拟机是开源的吗?它是由商业公司开发的吗?
下一篇: Python 虚拟机(CPython)是开源软件吗?它属于哪家公司?

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。