使用Python第三方库requests和bs4 爬取必应首页的图片,并存储到系统对应位置
这是一个Python爬虫的案例
- 使用requests库爬取bing首页的图片
- 首先查看bing源代码,找到对应图片的链接
- 分析这个div标签
- 开始写python程序
- 代码实现
使用requests库爬取bing首页的图片
必应首页每天都会更新一张美丽的照片,那么怎么用爬虫爬取这些图片呢
附 必应url:“https://cn.bing.com”
首先查看bing源代码,找到对应图片的链接
进入bing首页,鼠标右击后点击检查
或者(F12进入开发者面板)
ps:个人认为鼠标右击效率更高一些,可以直接找到图片链接的所在位置
找到的HTML如下:
<div id="bgImgProgLoad" data-ultra-definition-src="/th?id=OHR.QingmingCandle2020_ZH-CN2729283235_UHD.jpg&rf=LaDigue_UHD.jpg&pid=hp&w=1920&h=1080&rs=1&c=4" data-explicit-bing-load="false" data-dynamic-size="true"></div>
分析这个div标签
id值:bgImgProgLoad(这个属性可以帮助我们迅速定位到该标签)
属性1:data-ultra-definition-src(值为我们要找的图片链接)
其他属性:没有价值,忽略掉
开始写python程序
首先导入我们需要的第三方库
requests
功能:模拟请求
函数:requests.get(url,headers)
属性值:
url(发起请求的url连接)
headers(设置请求头)
返回值:一个response对象
使用方法:
resp = requests.get(url=“我们的url”,headers=“我们设置的请求头”)
bs4
功能:建立一个类似于DOM树的结构,其提供的接口可以帮助我们迅速定位到我们要找的标签
函数:bs4.BeautifulSoup(html,features)
属性值:
html:要解析的内容
features:设置解析器
返回值:一个BeautifulSoup对象
使用方法:
soup = bs4.BeautifulSoup(html, features=“lxml”)
代码实现
import requests
import bs4
url = "https://cn.bing.com/"
# 设置请求头
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36"}
# 发起请求
r = requests.get(url=url, headers=headers)
html = r.text
# 解析获取的html
soup = bs4.BeautifulSoup(html, features="lxml")
# 寻找对应id的标签
img_div = soup.find(name="div", id="bgImgProgLoad")
# 可以使用 标签对象["标签属性"] 的方式获取属性值
# 在这里我们需要做一个简单的字符拼接,来形成完整的url链接
utl2 = "https://cn.bing.com/" + img_div["data-ultra-definition-src"]
# 最后,将得到的img图片存储到文件当中
# ps:获取图片的方式为 r2.content r2就是我们使用requests中get方法获取的response对象
with open("jpg1.jpg", 'wb') as j:r2 = requests.get(url=utl2, headers=headers)j.write(r2.content)
使用Python第三方库requests和bs4 爬取必应首页的图片,并存储到系统对应位置相关推荐
- Python网络爬虫requests、bs4爬取空姐图片,福利哦
Scrapy框架很好,也提供了很多扩展点,可以自己编写中间件处理Scrapy的Request和Response.但是可定制化或者可掌控性来说,还是自己写的爬虫更加强一些. 接下来,我们来看一下使用Py ...
- Linux离线安装Python第三方库Requests
前言:因为公司服务器不能上外网,所以执行Python脚本需要自行配置,如用到第三方库,也要自行安装.由于这个系统镜像缺少很多基础依赖,导致各种apt install都无法安装,只能源码安装插件.不管如 ...
- python利用bs4爬取外国高清图片网站
python利用bs4爬取外国高清图片网站 爬取高清图片 爬取高清图片 import re import requests from bs4 import BeautifulSoup import o ...
- python3 requests+bs4爬取某网页MM图片
python3 requests+bs4爬取某网页MM图片 原理: 将所要抓取的首页分标题及地址保存到字典,遍历字典,对每一个标题下的所有分页进行抓取 import requests from bs4 ...
- python爬虫实战(一)--爬取知乎话题图片
原文链接python爬虫实战(一)–爬取知乎话题图片 前言 在学习了python基础之后,该尝试用python做一些有趣的事情了–爬虫. 知识准备: 1.python基础知识 2.urllib库使用 ...
- python第三方库——requests
requests基础理解 这是常用的爬虫库,可以实现从浏览器爬取信息,还可给浏览器发送信息. 这儿主要讲解,requests.get.requests.post.requests.session,这三 ...
- python按关键字爬取必应高清图片
通过查询前人的博客,发现必应可通过url按关键字查找图片: https://www.bing.com/images/async?q=查询关键字&first=图片编号&count=图片数 ...
- Python学习笔记(65)~ 爬取百度首页标题
爬取百度首页标题 Demo #!/usr/bin/python3 import re from urllib import request#爬虫爬取百度首页内容 data=request.urlope ...
- python第三方库Requests的基本使用
Requests 是用python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库.它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTT ...
- Python中使用requests和parsel爬取喜马拉雅电台音频
场景 喜马拉雅电台: https://www.ximalaya.com/ 找到一步小说音频,这里以下面为例 https://www.ximalaya.com/youshengshu/16411402/ ...
最新文章
- 深度学习-智能视频监控
- 利用Event和MapFile进程共享信息
- Kotlin威胁、Python逆袭,2018年程序员需要升级哪些技能?(附报告下载)
- BCH大涨带领币市小幅走高 个别币种走势逐步分化
- POJ1325二分匹配或者DINIC(最小路径覆盖)
- 有感于任正非老爷子的发言
- 笨方法python3_“笨方法”学Python3,习题 34 。
- 冇内容管理系统JS分析资料 一. attachEvent 的用法
- wps怎么做时间线_时间不够用怎么办?如何做才会更高效
- 电子计算机专业vs土木工程专业,最难学十大工科专业 不想累成狗就别去(高薪)...
- python求圆的面积pta_任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积...
- Ubuntu20.04安装gamit10.7
- 数理统计——AQI预测
- Android应用内换肤
- 基于DCNN的xception模型
- Java程序设计 北京大学 Week8测试
- 学习笔记:使用endnotesX9插入参考文献
- 加拿大计算机cs专业,加拿大CS专业全面详解
- (附源码)计算机毕业设计ssm高校线上教学系统
- 《征服老板:零基础做出高逼格PPT》笔记(四)