Bing上有很多精美的图片,可以利用python将这些图片抓取下来作为电脑的壁纸。想要抓取Bing上的高清图,首先需要对Bing图片展示的源代码进行分析,可以确定非贪婪匹配字段为(非贪婪算法可参考):

pic_urls_match = r'data-progressive=\"(.*?)\"'


通过一下代码可以实现对网页的获取,具体原理我会在其他文章中介绍

def getPage(url):#用于浏览器伪装headers ={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36'}req = urllib.request.Request(url=url,headers=headers)res = urllib.request.urlopen(req)#获得网页源码并解码html_code = res.read().decode('UTF-8')return html_code

设置图片保存函数,其中使用try是为了在图片抓取的过程中,某一张图片获取失败不影响其他图片的抓取:

def saveImg(img_url,dirname):#保存图片到磁盘文件夹dirname中try:if not os.path.exists(dirname):print ('文件夹',dirname,'不存在,重新建立')#os.mkdir(dirname)os.makedirs(dirname)#获得图片文件名,包括后缀basename = os.path.basename(img_url)#拼接目录与文件名,得到图片路径filepath = os.path.join(dirname, basename)#下载图片,并保存到文件夹中urllib.request.urlretrieve(img_url,filepath)print("Save", filepath, "successfully!")except IOError as e:print ('文件操作失败',e)except Exception as e:print ('错误 :',e)return filepath

主函数

def main():url = 'https://bing.ioliu.cn/'#dirname='C:\Users\wzr\Desktop\srceen'html_code = getPage(url)#用于匹配网址的字符串pic_urls_match = r'data-progressive=\"(.*?)\"'image_urls = re.findall(pic_urls_match,html_code)for i in range (len(image_urls)):img_url = image_urls[i]filepath = saveImg(img_url,'C:\\Users\\wzr\\Desktop\\srceen')   # 图片文件的的路径print('Compelet')

最后的图片展示,所有的源代码可以在我的Github上找到

Python 下载Bing首页高清图片相关推荐

  1. Java与Python下载Bing首页图片

    Java与Python下载Bing首页图片 一,首先是Java代码 import org.apache.http.HttpEntity; import org.apache.http.client.m ...

  2. python爬虫爬取高清图片——爬虫入门

    自动抓取某图片网站高清壁纸并下载保存 使用requests请求网页,bs4解析数据 话不多说直接看代码,刚学不久欢迎指点 #-*- codeing = utf-8 -*- #@Time : 2022/ ...

  3. 11个免费高清图片下载站

    title: 11个免费高清图片下载站 tags: [高清,图片,下载] categories: [高效率生活,技巧] grammar_cjkRuby: true copyright: true 当你 ...

  4. python玩王者荣耀皮肤_python 王者荣耀皮肤高清图片下载 附源码

    本帖最后由 你isbest 于 2018-3-20 16:33 编辑 最近在学python ,用python做了一个王者荣耀的皮肤高清图片的下载工具,发给大家这个是从官网下载一个json文件,所以是实 ...

  5. python按关键字爬取必应高清图片

    通过查询前人的博客,发现必应可通过url按关键字查找图片: https://www.bing.com/images/async?q=查询关键字&first=图片编号&count=图片数 ...

  6. python爬取英雄联盟所有皮肤价格表_利用Python协程来爬取LOL所有英雄的皮肤高清图片...

    最近有一朋友要LOL的数据进行数据分析,叫我帮他抓一下数据.突发奇想,顺便把英雄的所有皮肤下载到本地好了. PS: 安装了LOL的伙伴图片直接在LOL文件夹里面,可以百度寻找.此贴仅分享下技术思路以及 ...

  7. 【Python爬虫实战】爬取彼岸图库高清图片

    利用Python爬取彼岸图库高清图片 让你每天一张壁纸不重样,今天利用Python爬取 彼岸图库 http://pic.netbian.com/ 分析网页 通过首页可以看到要获取全站图片必须先抓取各个 ...

  8. python爬取王者皮肤_Python爬取王者荣耀英雄皮肤高清图片

    前言 临下班前,看到群里有人在讨论用王者农药的一些皮肤作为电脑的壁纸,什么高清的,什么像素稍低的,网上查了一手,也有,但像素都不一样,所以,我就想着,自己去官网直接爬他的高清皮肤就好了,然后就有了这边 ...

  9. python爬虫--王者荣耀高清壁纸下载(多线程)

    下面的代码是采用多线程的生产者消费者模式,下载速度比之前文章的普通下载快一点. 普通下载的链接:python爬虫–王者荣耀高清壁纸下载 代码在下载方面是没有问题的,可以直接运行,就是在收集打不开链接的 ...

最新文章

  1. IntelliJ IDEA 教程
  2. 毕设过程中的学习 随便写写~
  3. C语言实现单链表的逆置
  4. Solr的函数查询(FunctionQuery)
  5. 资源推荐 | TensorFlow电子书《FIRST CONTACT WITH TENSORFLOW》
  6. hdu 1166 敌兵布阵(线段树之 单点更新+区间求和)
  7. jQuery的next()、nextAll()、nextUntil()方法
  8. 对大数据知识架构的梳理
  9. 201621123065《JAVA程序设计》第11周学习总结
  10. window 写txt 换行
  11. think in java 读书笔记 2 —— 套接字
  12. 如何通过ngnix将网站访问改为https
  13. linux如何rpm更新内核,使用RPM包对RedHat进行内核升级
  14. 贺利坚老师汇编课程18笔记:栈的操作SS:SP
  15. Docker设置容器CPU、memory、磁盘IO资源限制
  16. php win8 下载64位下载,万能驱动助理(e驱动) Win8.1 64位专版 6.6 官方版
  17. echarts瀑布图_一种基于阶梯瀑布图的数据计算方法与流程
  18. 微信开发五之微信红包开发
  19. 超星问卷与麦客问卷自动填写(selenium+Chrome)
  20. 看了《天道》,我买了这套书,据说有八卷

热门文章

  1. gzip: stdin: not in gzip format
  2. 原生微信小程序学习第一部分
  3. 北京理工大学计算机基本介绍
  4. xshell中重启指令_Linux下服务器重启的脚本命令
  5. 华为云IoT智慧物流案例11 | 华为云FOTA升级广和通L610模组
  6. 编译原理短语、直接短语及句柄
  7. 如何用命令打开恶意软件扫描工具?
  8. 拼多多搜索怎么测图测款?教你快速找出店铺内潜在爆款
  9. 钟勇 中国科学院成都计算机研究所,中国科学院大学研究生导师教师师资介绍简介-钟勇...
  10. 探索区块链C端市场 艺术品、卡牌、音乐皆可NFT