weixin_44201621 2018-12-21 11:15 采纳率: 0%
浏览 10937

python 爬虫利用urllib.request.urlretrieve() 保存图片在本地,图片没有内容

我用Jupyter Notebook爬取了需要保存的图片的url,但是利用urllib.request.urlretrieve() 将图片保存到本地,图片没有内容,该url使用360浏览器打开也是没有内容的图片(和我保存在本地一样),但是用goole打开就是正常的图片。

相关代码
url='http://www.jj20.com/bz/zrfg/d...'
response=urllib.request.urlopen(url)
html=response.read().decode('gb2312')

soup=BeautifulSoup(html,'lxml')
data=soup.select('body > div.wzfz.top-main.fix > div > ul.pic2.vvi.fix')
data2=re.findall('src="(.+?)" width',str(data))
data2 #此处得到了图片链接的一个列表
图片说明

x=0
for itemm in data2:
print(itemm)
urllib.request.urlretrieve(itemm,'C:\Users\Administrator\Desktop\pachong2\%s.jpg'%x)
x+=1 #通过链接保存图片到本地

代码完毕,运行不报错,但保存的图片却是加密图片,如下
图片说明我用360浏览器打开这些url也是显示这个,但是用goole打开就是正常的图片。如下:
图片说明

我百度了好多相关内容,但和别人的出错结果都不一样,想知道这种情况是怎么回事,为什么360浏览器打开是这样的,还有就是要怎么才能通过goole浏览器把图片下载下来呢。

  • 写回答

4条回答 默认 最新

  • lyhsdy 2018-12-21 07:13
    关注

    ←如果以下回答对你有帮助,请点击右边的向上箭头及采纳下答案

    因为网站做了反爬,无法直接打开图片连接,还有User-Agent的身份验证,所以加入请求头去下载就可以了

    
    import requests
    
    s=requests.session()
    headers={
    'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
    'Accept-Encoding':'gzip, deflate',
    'Accept-Language':'zh-CN,zh;q=0.9',
    'Cache-Control':'max-age=0',
    'Connection':'keep-alive',
    'Host':'www.jj20.com',
    'If-Modified-Since':'Fri, 21 Dec 2018 03:58:29 GMT',
    'If-None-Match':'"cf51d66ee198d41:0"',
    'Upgrade-Insecure-Requests':'1',
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.15 Safari/537.36',
    }
    s.headers.update(headers)
    url=r'http://img.jj20.com/up/allimg/1111/052QQ64447/1P52Q64447-1-lp.jpg'
    html=s.get(url=url)
    print(html.text)
    with open('picture.jpg', 'wb') as file:
        file.write(html.content)
    
    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)