python爬取高清动图

  • 使用Pycharm以及pytnon3.8进行开发
    • 1.开发环境的配置
    • 2.功能实现
    • 3.实现多页面下载

使用Pycharm以及pytnon3.8进行开发

接下来具体讲述如何使用python进行图片的爬取以及存储。

1.开发环境的配置

下载pycharm以及配置pycharm

  1. 下载pycharm(链接: link.)
  2. 安装完成后对pycharm进行设置
    打开设置
    选择Add添加python运行环境

    添加第三方库文件
  3. 第三方库主要有requests,time,lxml;后面会用到
    **ps:**如果无法正常添加则需要添加国内镜像库地址
    清华:https://pypi.tuna.tsinghua.edu.cn/simple
    阿里云:http://mirrors.aliyun.com/pypi/simple/
    中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
    华中理工大学:http://pypi.hustunique.com/
    山东理工大学:http://pypi.sdutlinux.org/
    豆瓣:http://pypi.douban.com/simple/
    添加方法如下在上述步骤之后点击Manage Repositories

2.功能实现

1.爬取的网站为https://www.haha.mx/topic/1/new/
首选我们需要添加一个响应头文件,可以通过F12进行查看

定义一个请求头文件

// An highlighted block
headers = {'User-Agent': 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50'
}

2.向网页发送一个页面请求,并将网页源码转化为text格式

// An highlighted block
url=https://www.haha.mx/topic/1/new/1
esponse = requests.get(url, headers=headers)
html = response.text

3.解析地址将地址转化为xpath可识别的类型

// An highlighted block
html2 = etree.HTML(html)

4.提取每一张图片的地址

// An highlighted block
comic_list = html2.xpath('//img[@class="joke-main-img-suspend lazy" or @class="joke-main-img lazy"]/@data-original')

使用正则表达式确定图片地址

通过两个链接的对比我们发现只有其中一个字符串不同"normal"(预览图)与"middle"(高清大图)

// An highlighted block
https://image.yangpinwang.com/2021/03/20/normal/2959752_2c303d6808783b7561679732575314cb_1616227414.jpg
https://image.yangpinwang.com/2021/03/20/middle/2959752_2c303d6808783b7561679732575314cb_1616227414.jpg

因此我们后面进行替换就可以了
5.遍历获取到的页面链接并进行真实地址获取

// An highlighted blockfor url in comic_list:time.sleep(1)#进行地址中不同真实地址与预览图地址中的不同字符串的替换response = requests.get(str(url).replace("normal", "middle"))

6.进行图片的下载,并写入硬盘

// An highlighted block
#使用时间进行命名file_name = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime(time.time()))#下载的路径以及文件后缀,因为gif格式静态图和动态图都可以显示,就直接转化为gif后缀with open('xiazai2' + '/' + file_name + '.gif', 'wb') as f:#写入数据f.write(response.content)#打印文件名,已验证文件是否正常运行print(file_name)

7.导入运行库

// An highlighted block
#请求页面
import requests
#文件命名
import time
#解析页面信息
from lxml import etree

3.实现多页面下载

这里我把源码帖出来,大家可以自己探索,也可以直接下载(链接: link.)

python爬取高清动图相关推荐

  1. Python爬取高清无版权美图

    前言 做公众号,总是会需要使用一些图片做封面或背景.我的公众号的图片有两种来源:一是通过创可贴自己动手修改下就可以用了,还一种就是在网上下载图片. 那如何下载高清并且可以供使用(无版权)的图片了?我是 ...

  2. python代码壁纸-Python爬取高清壁纸

    需要准备的东西: 用到的环境:python3.7 用到的ide:pycharm 用到的库 time.BeautifulSoup.requests 本次的目标: 下载几百张海贼王的高清壁纸 练习爬虫 分 ...

  3. Python 爬取高清桌面壁纸

    今天写了一个脚本用来爬取ZOL桌面壁纸网站的高清图片: 链接:http://desk.zol.com.cn/1920x1080/ 本程序只爬了美女板块的图片,若要下载其他板块,只需修改程序中的&quo ...

  4. Python爬取高清桌面壁纸(附源码),直接运行即可

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 以下文章来源于云+社区,作者 深雾 转载地址 https://blog.c ...

  5. python 知乎美女_知乎大神用Python爬取高颜值美女(爬虫+人脸检测+颜值检测)

    原标题:知乎大神用Python爬取高颜值美女(爬虫+人脸检测+颜值检测) 1 数据源 知乎话题『美女』下所有问题中回答所出现的图片 2 抓取工具 Python 3,并使用第三方库 Requests.l ...

  6. 深夜,我用python爬取了整个斗图网站,不服来斗

    深夜,我用python爬取了整个斗图网站,不服来斗 QQ.微信斗图总是斗不过,索性直接来爬斗图网,我有整个网站的图,不服来斗. 废话不多说,选取的网站为斗图啦,我们先简单来看一下网站的结构 网页信息 ...

  7. 爬虫实例(二)—— 爬取高清4K图片

    大家好,我是 Enovo飞鱼,今天继续分享一个爬虫案例,爬取高清4K图片,加油

  8. Python 爬取表情包-斗图不会输在起跑线

                   Python 爬取表情包-斗图不会输在起跑线 对于酷爱聊天的朋友来说,表情包应该是他们心中的灵魂,没有图的聊天只能算虾扯蛋了.图片(表情包)赋予了聊天更多的内涵,很多时候 ...

  9. python requests返回值为200 但是text无内容_爬取高清无版权美图

    01 前言 做公众号,总是会需要使用一些图片做封面或背景.我的公众号的图片有两种来源:一是通过创可贴自己动手修改下就可以用了,还一种就是在网上下载图片. 那如何下载高清并且可以供使用(无版权)的图片了 ...

  10. python爬取高匿代理IP(再也不用担心会进小黑屋了)

    一起进步 为什么要用代理IP 很多数据网站,对于反爬虫都做了一定的限制,这个如果写过一些爬虫程序的小伙伴应该都深有体会,其实主要还是IP进了小黑屋了,那么为了安全,就不能使用自己的实际IP去爬取人家网 ...

最新文章

  1. zencoding实践
  2. HttpClient 如何设置请求接口等待时间
  3. 如何使用华为云的计算资源来进行机器学习(CodeLab)
  4. RadioGroup和RadioButton(单选框)
  5. java ing印版,Java中有趣的事【汇总】持续更新ing
  6. 指令重排与jvm底层实现
  7. (四)怎么优化 where 子句
  8. spring cloud互联网分布式微服务云平台规划分析--spring cloud系统管理平台
  9. 是以微型计算机为中心 配以相应的外围设备,______是以微型计算机为中心,配以相应的外围设备、电源和辅助电路,以及指挥微型计算机工作的系统软件而构成的。...
  10. [深入Maven源代码]maven绑定命令行参数到具体插件
  11. excel中添加图片的代码
  12. javaWeb框架开发
  13. unity如何重新生成解决方案_揭秘Sherman:使用Unity制作影视级光照效果
  14. 第三方定量定性质谱检测技术实验
  15. web测试----死链检查(Xenu)
  16. matlab 固定收益证券,matlab计算固定收益证券学习(二)
  17. Linux进阶 | 万字详解Docker镜像的制作,手把手学会!
  18. oracle 12c rac tablespace 表空间删除办法
  19. [codeforces 1324D] Pair of Topics 分而治之+排列组合
  20. 面向对象的五大原则是什么

热门文章

  1. 如何在手机下载微博APP中视频?【最新有效方法】
  2. ai旋转扭曲_AI变换及旋转图形工具详解
  3. stc12串口收发计算机,stc12c5a60s2串口程序
  4. Flask 物联网局部应用情景
  5. 一个屌丝程序猿的人生(四十二)
  6. 2022年最新有关“绿色消费积分”制度的行业利好
  7. Sorted Adjacent Differences
  8. 各种存储硬件(Memery)区分(ROM、RAM、DRAM、SRAM和FLASH)
  9. raid缓存策略设置
  10. 北京地铁,把什么丢了?