Python爬虫:爬取必应壁纸(可直接运行)
1、Why is bing?
必应专门的壁纸网站,每天都会更新一张高质量,漂亮到不行的图片。非常适合用来当电脑的桌面壁纸,且可以适配不同的桌面尺寸,提升你的桌面逼格。
2、code
2.1 所需要的第三方库
代码中涉及到的第三方库。
- os
- re
- requests
2.2 代码
下载运行前需更改代码中储存下载图片的路径
下载即可运行!!
#爬取必应壁纸
import os
import re
import requestsdef get_one_page(url): # 解析给定url的网页源代码headers = {'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36'}response = requests.get(url,headers = headers)if(response.status_code == 200): # 状态码200说明返回状态正确,状态码是404,403等其他代号则说明网页请求失败return response.textreturn Nonedef download(url,filename): # 下载图片到本地文件夹filepath = 'E:/vlog// '+ filename + '.jpg' # 这里的路径可以更改自己的文件夹headers = {'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36'}if os.path.exists(filepath): #判断图片路径是否已经存在,如果存在就不保存了returnwith open(filepath,'wb')as f: # 把图片以二进制形式写入到本地response = requests.get(url,headers=headers)f.write(response.content)def parse(html): # 解析网页源代码pattern = re.compile('data-progressive="(.*?)".*?<h3>(.*?)</h3>') # 正则表达式筛选htmlitems = re.findall(pattern,html)for item in items:try:url = item[0].replace('640','1920').replace('480','1080') # 替换图片尺寸#print(url)imagename = item[1].strip()rule = re.compile(r'[a-zA-z1-9()-/]')#[]用来表示一组字符【abc】匹配a,b,或cimagename = rule.sub('', imagename)download(url,imagename.strip())print(imagename,"正在下载")except Exception:continueif __name__ == '__main__':for page in range(1,20): # 爬取页面的范围,可以随意更改url = 'https://bing.ioliu.cn/?p='+str(page)print("正在抓取第", page, "页" ,url)html = get_one_page(url)parse(html)
3、Result
运行过程
运行结果
一些说明
- 下载的有些图片显示不出来,可能是解析源代码的时候出现的小问题,但是概率很小,基本上爬取100张图片才会出现几张问题图片
- 如果需要爬取大量图片,需要设置休眠时间,防止被浏览器的反爬机制识别为爬虫从而爬取失败
Python爬虫:爬取必应壁纸(可直接运行)相关推荐
- python爬虫爬取必应每日高清壁纸
python爬虫爬取必应每日高清壁纸 一.简介 二.使用的环境 三.网页分析 1.分析网页每一页url形式以及总页数 2.网页重要信息收集 3.在源码中寻找所需信息的位置 四.代码实现 五.运行爬虫 ...
- Python爬虫-爬取wallhaven壁纸
Python爬虫-爬取wallhaven壁纸 前言 可行性分析 功能介绍 效果展示 基本思路 1.获取每页(1页24张)壁纸的url 2.获取每张壁纸缩略图的url 3.获取壁纸原图下载的url 4. ...
- python爬虫爬取网页壁纸图片(《底特律:变人》)
参考文章:https://www.cnblogs.com/franklv/p/6829387.html 爬虫爬取网址:http://www.gamersky.com/news/201804/10396 ...
- 基于Jsoup的Java爬虫-爬取必应壁纸网站的壁纸(Java静态壁纸爬虫实例)
准备阶段 1.必应壁纸网站:https://bing.ioliu.cn(爬取对象网站) 2.Jsoup包下载地址:https://jsoup.org/download(以下代码需要用到该包,记得导入包 ...
- Python爬虫——爬取Bing壁纸
个人作为获取壁纸的小脚本 所以添加了random模块,壁纸以日期命名,每天随机领取一张新壁纸 使用requests库爬取,re正则提取数据 使用PIL库 将下载的壁纸自动展示 # -*- coding ...
- 用python爬虫爬取网页壁纸图片(彼岸桌面网唯美图片)
参考文章:https://www.cnblogs.com/franklv/p/6829387.html 今天想给我的电脑里面多加点壁纸,但是嫌弃一个个保存太慢,于是想着写个爬虫直接批量爬取,因为爬虫只 ...
- python唯美壁纸_用python爬虫爬取网页壁纸图片(彼岸桌面网唯美图片)
参考文章:https://www..com/franklv/p/6829387.html 今天想给我的电脑里面多加点壁纸,但是嫌弃一个个保存太慢,于是想着写个爬虫直接批量爬取,因为爬虫只是很久之前学过 ...
- python爬虫爬取wallpapers最新壁纸
python爬虫爬取wallpapers最新壁纸 详细教程请访问:https://www.bilibili.com/video/av58978561/ 详细教程请访问:https://www.bili ...
- 在当当买了python怎么下载源代码-python爬虫爬取当当网
[实例简介]python爬虫爬取当当网 [实例截图] [核心代码] ''' Function: 当当网图书爬虫 Author: Charles 微信公众号: Charles的皮卡丘 ''' impor ...
- python爬虫代码实例-Python爬虫爬取百度搜索内容代码实例
这篇文章主要介绍了Python爬虫爬取百度搜索内容代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 搜索引擎用的很频繁,现在利用Python爬 ...
最新文章
- 如何用Python实现八大排序算法
- 数据结构:用栈实现表达式的转换(文字描述+详细步骤示例)——中缀转后缀
- tensorflow系列之1:加载数据
- java tm无响应_Java(TM) Platform SE binary 未响应 是怎么个情况?
- Thread.yield()和Thread.sleep(0)
- 如何在 Mac 上查找路由器 IP 地址?
- 2020 cr节目源_2020年四款最新直播软件汇总,频道多,画质流畅节目源超级稳定!...
- charset参数 sqluldr2_利用sqluldr2导出数据和sqlldr导入数据的方法
- 用差分法求解burger方程 matlab,偏微分方程数值解上机实验.doc
- 《上海悠悠接口自动化平台》-1.新增API 与 各参数的描述
- gavin中文是什么意思_Gavin[加文,盖温]的中文翻译及英文名意思
- FFmpeg的Android平台移植—编译篇
- 明清时期江右商的宗族教育——江西流坑村的历史人类学考察
- mysql中的整除和取余函数
- 账户经常被盗号怎么办?防盗“黑科技”了解一下
- Nginx官方文档(十一)【HTTP之ngx_http_core_module】
- 电脑c盘哪些文件可以删除_c盘满了怎么清理垃圾而不误删(答案在这里)
- SqlConnection,SqlDataAdapter,SqlCommand,SqlParameter
- 2542: 弟弟的作业
- 苹果平板一定要用原装笔吗?苹果平板电容笔推荐