这是一个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&amp;rf=LaDigue_UHD.jpg&amp;pid=hp&amp;w=1920&amp;h=1080&amp;rs=1&amp;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 爬取必应首页的图片,并存储到系统对应位置相关推荐

  1. Python网络爬虫requests、bs4爬取空姐图片,福利哦

    Scrapy框架很好,也提供了很多扩展点,可以自己编写中间件处理Scrapy的Request和Response.但是可定制化或者可掌控性来说,还是自己写的爬虫更加强一些. 接下来,我们来看一下使用Py ...

  2. Linux离线安装Python第三方库Requests

    前言:因为公司服务器不能上外网,所以执行Python脚本需要自行配置,如用到第三方库,也要自行安装.由于这个系统镜像缺少很多基础依赖,导致各种apt install都无法安装,只能源码安装插件.不管如 ...

  3. python利用bs4爬取外国高清图片网站

    python利用bs4爬取外国高清图片网站 爬取高清图片 爬取高清图片 import re import requests from bs4 import BeautifulSoup import o ...

  4. python3 requests+bs4爬取某网页MM图片

    python3 requests+bs4爬取某网页MM图片 原理: 将所要抓取的首页分标题及地址保存到字典,遍历字典,对每一个标题下的所有分页进行抓取 import requests from bs4 ...

  5. python爬虫实战(一)--爬取知乎话题图片

    原文链接python爬虫实战(一)–爬取知乎话题图片 前言 在学习了python基础之后,该尝试用python做一些有趣的事情了–爬虫. 知识准备: 1.python基础知识 2.urllib库使用 ...

  6. python第三方库——requests

    requests基础理解 这是常用的爬虫库,可以实现从浏览器爬取信息,还可给浏览器发送信息. 这儿主要讲解,requests.get.requests.post.requests.session,这三 ...

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

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

  8. Python学习笔记(65)~ 爬取百度首页标题

    爬取百度首页标题 Demo #!/usr/bin/python3 import re from urllib import request#爬虫爬取百度首页内容 data=request.urlope ...

  9. python第三方库Requests的基本使用

    Requests 是用python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库.它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTT ...

  10. Python中使用requests和parsel爬取喜马拉雅电台音频

    场景 喜马拉雅电台: https://www.ximalaya.com/ 找到一步小说音频,这里以下面为例 https://www.ximalaya.com/youshengshu/16411402/ ...

最新文章

  1. 深度学习-智能视频监控
  2. 利用Event和MapFile进程共享信息
  3. Kotlin威胁、Python逆袭,2018年程序员需要升级哪些技能?(附报告下载)
  4. BCH大涨带领币市小幅走高 个别币种走势逐步分化
  5. POJ1325二分匹配或者DINIC(最小路径覆盖)
  6. 有感于任正非老爷子的发言
  7. 笨方法python3_“笨方法”学Python3,习题 34 。
  8. 冇内容管理系统JS分析资料 一. attachEvent 的用法
  9. wps怎么做时间线_时间不够用怎么办?如何做才会更高效
  10. 电子计算机专业vs土木工程专业,最难学十大工科专业 不想累成狗就别去(高薪)...
  11. python求圆的面积pta_任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积...
  12. Ubuntu20.04安装gamit10.7
  13. 数理统计——AQI预测
  14. Android应用内换肤
  15. 基于DCNN的xception模型
  16. Java程序设计 北京大学 Week8测试
  17. 学习笔记:使用endnotesX9插入参考文献
  18. 加拿大计算机cs专业,加拿大CS专业全面详解
  19. (附源码)计算机毕业设计ssm高校线上教学系统
  20. 《征服老板:零基础做出高逼格PPT》笔记(四)

热门文章

  1. Google正确搜索方法
  2. postgres的brin索引
  3. aes sm1 对比_SM1,SM2,SM3,SM4刨析
  4. 算法:(1)确定字符互异
  5. 红色警戒2修改器原理百科(九)
  6. Could not resolve dependencies for project
  7. 商场云WiFi靠谱吗
  8. 非360手柄玩游戏视角颠倒的解决方案
  9. python webp图片转化格式
  10. js正则表达式检验经纬度