python中用urllib.retrieve下载网页图片时,由于权限问题不能下载
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中用urllib.retrieve下载网页图片时,由于权限问题不能下载相关的知识,希望对你有一定的参考价值。
用python中的urllib.retrieve下载网页图片时,由于权限问题不能下载,但是用浏览器是可以打开的,请问如何处理这个问题?怎么解决?谢谢!
你是不是下载了要登录后才能看到的图片?可以试着加一下cookie
import cookielibcj = cookielib.MozillaCookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
urllib2.install_opener(opener)
然后再添加user agent一起用试试看
参考技术A python 请求之前模拟一下User-Agent啊,伪装成浏览器追问加User-Agent是在访问页面时加的,这个图片的地址是已知的,不需要访问页面时去寻找,只是用urllib.urlretrieve()方法,怎么加?
追答怀疑是图片做了防盗链吧,有可能会检查地址栏的域来防盗链,我不确定你考虑一下!
参考技术B 通过抓包软件分析浏览器打开时带的参数是哪些,然后用urllib2,带上相应的信息去访问。追问模拟浏览器是用的urllib2模块,但是最后下载图片还是要用urllib模块,通过用urllib2的设置对urllib模块的使用有用吗?图片的地址是已知的,不需要读取网页内容去搜索图片的地址的
以上是关于python中用urllib.retrieve下载网页图片时,由于权限问题不能下载的主要内容,如果未能解决你的问题,请参考以下文章
在 Python 3 中用啥替代 xreadlines()?
如何在arch linux中用python 2完全替换python 3