• 1. Linux(以centos7为例)下自动挂载NTFS硬盘(7459)
  • 2. 搭建基于python +opencv+Beautifulsoup+Neurolab机器学习平台(431)
  • 3. 如何安装win10+Red Hat Enterprise Linux双系统?(354)
  • 4. tar打包如何不打包某一个文件夹(排除某些文件夹)(301)
  • 5. Java实现对文本文件MD5加密并ftp传送到远程主机目录(114)
  • 评论排行榜

    推荐排行榜

    手把手教你利用Python自动下载CL社区图片

    需求描述:

    最近发现CL社区上好多精华的帖子分享的图片非常棒,好想好想保存下来,但是一张一张地保存太费时间了,因此,造物者思想主义的我就想动手写个工具,实现只要输入帖子的链接,就能把所有的精华图片下载下来。

    程序分析思路:

    Python是一个很好的工具,使用起来非常方便。因此我决定用Python去实现。

    思路大概就是,我先输入链接,然后每一张图片的链接,然后去下载它。需求很明确,逻辑应该很清晰,开始干吧。

    环境说明:本人使用的是win7+Python3

    首先导入re、requests、os三个包,用于爬虫,os包用于目录的创建

    输入你要保存图片的的链接url = input("Input key url: ")

    这里以 dd.dety.men/htm_mob/16/… 为例,在浏览器打开是这样的,由于不可描述,我只能放这么一点东西

    这里用获得网页的内容result = requests.get(url)

    result.text是获取到的网页源码,为了避免有编码问题的困扰,我们现在前面做一下转码

    然后我们需要在源码中找到标题,一会用作保存文件的文件名,标题的寻找的实现代码是,这样返回的是一个list,我们用的时候直接取第0个就好(程序猿数数都是从零开始的)。

    这里要说一下这个寻找标题的实现代码的正则表达式,我们看到网页链接中的源码是

    实现代码的正则表达式就是要找<title>和</title>中间的那一部分,找到的标题如下

    下面来干正事了,从网页中找图片的链接,首先先看浏览器上,按F12打开开发者模式,点击一下"从页面中选中一个元素",选中图片,看到图片的源码

    <input data-src="http://www.79img.com/u/20180829/13435782.jpg"

    但是我们需要在Python中看看re获取到的源码是什么样的,

    获取到的图片链接是这样的data-src=\'http://www.79img.com/u/20180829/13392462.jpg\',因此我们用下面这个代码来找到所有的图片链接

    pic_url = re.findall('data-src=\'(.*?)\'', result_text, re.S)

    找到链接之后就是下载了,这是下载的方法,keyword是刚才找到的标题名

    加入了创建目录的操作

    源码和如何使用:

    最终的源码如下图所示:

    源码已经上传至github,欢迎下载,欢迎各种star,fork

    github.com/rootzhongfe…

    按如图使用

    就可以看到在当前目录产生了一个目录,给你们看看最后的成果图吧,很黄很暴力。

    posted on 2018-09-01 21:23 钟子敬07 阅读(3) 评论(0) 编辑 收藏 刷新评论 刷新页面 返回顶部 注册用户登录后才能发表评论,请 登录 注册 访问 网站首页。 最新IT新闻 :
    · 荣耀Magic 2推出滑屏,是创新还是倒戈苹果的闹剧?
    · 趣店、乐信双发财报:明星创始人“一时瑜亮”,现已分道扬镳
    · 网游总量调控:腾讯网易的一时之痛 VS 小厂商们的灭顶之灾
    · 一线城市靠房子实现“血液净化”,你离逃离北上广还有多久?
    · 程维道歉之后,滴滴的客服究竟要怎么改?
    » 钟子敬07 Python Selenium Firefox