文章目录

  • 前言

前言

本篇文章主要介绍使用bs4解析来爬取某网站上的唯美高清大图,涉及到的零碎知识较多,详细易懂,适合新手小白爬虫入门。
思路如下:
①拿到主页面的源代码,然后提取到子页面的链接地址href;
②通过href进入子页面,从子页面源代码中找到图片的下载地址,img ->src;
③下载图片;


下面通过代码讲解具体做法:

import requests
from bs4 import BeautifulSoup
import time
url="https://www.umei.cc/bizhitupian/weimeibizhi/"
resp=requests.get(url)
resp.encoding='utf-8' #处理中文乱码。这里的内容需要与源代码中charset的值保持一致。
#把源码交给bs解析
main_page=BeautifulSoup(resp.text,"html.parser") #指定html解析器
#使用find()在源代码中找到div,其属性为class且其属性值为TypeList的代码段,返回一个列表;
#在这个列表中找所有的a标签
alist=main_page.find("div",class_="TypeList").find_all("a")
#print(alist) #拿到定位到此区域下面的所有内容
for a in alist: href=a.get("href") #直接通过get就可以拿到属性的值#print(href) #拿到每个子页面后面一截链接child_href="https://www.umei.cc"+href #通过字符串拼接,得到子页面链接print(child_href)#拿到子页面的源码child_page_resp=requests.get(child_href) child_page_resp.encoding='utf-8'child_page_text=child_page_resp.text #从子页面中拿到图片的下载路径child_page=BeautifulSoup(child_page_text,"html.parser")p=child_page.find("p",align="center") img=p.find("img")#下载图片src=img.get("src")img_resp=requests.get(src)#img_resp.content #这里拿到的是字节img_name=src.split("/")[-1] #拿到url中的最后一个/以后的内容with open(img_name,"wb") as f:f.write(img_resp.content) #将图片内容写入文件print("over!!",img_name)time.sleep(1)
print("all over!!!")

官网首页


右键,拿到源页面代码,找到<div class="TypeList"的位置,下方即为我们要找的每个子页面的链接地址,这个地址即为a标签中href的值(后期需要拼接)

进入其中任意一个子页面,如姜子牙

相同方式打开此页面的源代码,可以利用选中的这部分文字定位图片的链接(举的栗子是姜子牙,其他同理)

注意:find()找到一个就返回,而findall()是找所有。
得到的列表利用循环对其中的每一个子部分进行相同的操作,然后输出。
得到的链接并不是子页面的链接地址,还需要进行字符串的拼接,拼接成真正的子页面的链接。

python超详细零基础 bs4解析之爬取唯美图片相关推荐

  1. Python爬取 | 唯美女生图片

    这里只是代码展示,且复制后不能直接运行,需要配置一些设置才行,具体请查看下方链接介绍: Python爬取 | 唯美女生图片 from selenium import webdriver from fa ...

  2. python使用 Scrapy 爬取唯美女生网站的图片资源

    python  python使用 Scrapy 爬取唯美女生网站 的资源,图片很好,爬取也有一定的难度,最终使用Scrapy获取了该网站 1.5W多张美眉照片....如有侵权,联系,立删除. ==== ...

  3. python数据解析——xpath爬取文字和图片

    xpath解析:最常用且最便捷高效的一种解析方式,通用性. xpath解析原理: 1.实例化一个etree的对象,且需要将被解析的页面源码数据加载到该对象中. 2.调用etree对象中的xpath方法 ...

  4. python画龙猫_宫崎骏王国——《龙猫》小梅(超详细零基础马克笔手绘教程)

    大家好,我是刀刀.我特别喜欢宫崎骏的动漫,也特别喜欢用马克笔画画!我想和大家一起来,把宫崎骏笔下可爱的角色都画一遍,如果你也感兴趣,请和我同行. 这节课我们来先学一学零基础马克笔,第二课.我们一起来画 ...

  5. python爬虫酷狗_python爬虫教程:爬取酷狗音乐,零基础小白也能爬取哦

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云 作者:python学习教程 ( 想要学习Python?Pyt ...

  6. python爬虫教程:爬取酷狗音乐,零基础小白也能爬取哦

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云 作者:python学习教程 ( 想要学习Python?Pyt ...

  7. python下载图片代码并解析_Python爬取小姐姐图片代码_批量下载

    本帖最后由 OnlineYx 于 2021-1-13 14:44 编辑 我试着改了一下,写了个循环和判断,输出起始网页的ID和结束网页的ID就能批量地下载小姐姐了. 001.png (83.38 KB ...

  8. py3+requests+urllib+bs4+threading,爬取斗图图片

    实现原理及思路请参考我的另外几篇爬虫实践博客 py3+urllib+bs4+反爬,20+行代码教你爬取豆瓣妹子图:http://www.cnblogs.com/uncleyong/p/6892688. ...

  9. [STM32] Stm32f103c8t6+RC522 实现读卡写卡功能(超详细,零基础,小白)

    本篇文章内容总结下来就是 读卡            使用默认密码读卡所有扇区所有块的数据 写ID            使用默认密码读取卡一的0扇区的第一块数据并写入到卡二的0扇区的第一块里 密码读 ...

最新文章

  1. 浅谈数据库乐观锁、悲观锁
  2. Vue+Openlayers显示TileWMS时不显示默认控件放大缩小旋转等组件
  3. KMP Trie 例题讲解
  4. 11年亚锦赛球员数据_2020年11月楼市数据更新!全美房屋中间价持续上涨
  5. Ubuntu中配置虚拟专用网络***
  6. 静态内容负载均衡的具体实现-续《几百元搞定大型网站》
  7. Designing service layer classes in PHP
  8. 用计算机创造的音乐,【电影音乐论文】计算机音乐技术在电影音乐中的运用(共1977字)...
  9. 腾讯2020校园招聘-后台
  10. 神舟战神笔记本安装Ubuntu16.04 系统
  11. 2022年中职网络空间安全国赛竞赛题解析仅代表自己的建议——2022年中职网络安全国赛竞赛试题2解析
  12. 《明日歌》《今日诗》《昨日谣》
  13. 我的自选股估值观察:家电+银行+地产+白酒
  14. NCAE(全国工业和信息化应用人才考试 )-- 服务外包 JAVA 软件开发复习整理(一)
  15. TextToSpeech文字转语音、文字转音频文件并播放
  16. 月工资计算日薪计算加班公式
  17. android系统解锁代码,屏蔽系统解锁
  18. 用友U8出纳管理制单时报错
  19. 柯西-施瓦茨不等式的四种形式
  20. (十二)Flax Engine游戏引擎物理引擎 physics

热门文章

  1. ZIP压缩文件密码忘记了怎么办?怎么破解?
  2. 【第五讲】BeanFactory 后处理器
  3. 小米5c android7.0,亲儿子待遇真爽!小米5c正式升级安卓7.1
  4. 完全使用开源免费软件的企业网络系统
  5. 漫谈程序员系列:一个老程序员的2014年终总结
  6. OSChina 周三乱弹 —— 你们胆子真大
  7. java正则字母下划线数字_由数字、26个英文字母、下划线或汉字的正则表达式
  8. Markdown常用语法详解
  9. 如何将ERP物理机迁移至阿里云服务器
  10. MySQL安装与配置心得体会_Mysql安装与配置总结