新版本移步:https://www.cnblogs.com/zy7y/p/13376228.html

下载斗图拉最新表情包

  • 要爬取的目标所在网址:http://www.doutula.com/photo/list/?page=1

  • 需要用到的第三方库:requests(用于请求图片链接得到图片内容)

  • 一点点正则表达式的应用:(.*?):在代码中用来匹配图片链接地址,(.*):用来匹配图片对应的名称更多的正则表达式使用参见正则表达式

  • re模块的使用,其中用到re.findall('匹配规则',字符串),将符合匹配规则从整个字符串从找出来,放在一个新的列表中,并返回这个列表(list),更多re模块使用参见菜鸟教程-Python正则表达式

  • 详细代码

    # !usr/bin/env/python
    # -*- coding:utf-8 -*-
    """
    time: 2020/02/01 12:37
    author: Tceo1
    OS: windows10
    """
    import re
    import requests # url地址:http://www.doutula.com/photo/list/ 有页数之后:http://www.doutula.com/photo/list/?page=2
    url = "http://www.doutula.com/photo/list/?page=1"
    response = requests.get(url) # 返回一个响应类型
    m = r'data-original="(.*?)" alt="(.*)" class'
    # 查找符合的图片url,与图片名称
    result_list = re.findall(m, response.text)
    print(result_list)
    for image in result_list:
    image_url = image[0]
    image_name = image[1]
    # 通过切片获取到后缀名 如 .jpg
    image_type = image[0][-4:]
    # 请求图片url, 返回二进制响应
    image_content = requests.get(image_url).content
    save_path = r'E:/image/'
    with open(save_path + image_name + image_type, 'wb') as f:
    # 将二进制响应写入图片
    f.write(image_content)
    print("over")
  • 代码地址:https://github.com/Tceo1/scriptTools/blob/master/dtl.py

最后

感谢那些给予我帮助的人!

requests入门实践02_下载斗图拉最新表情包的更多相关文章

  1. requests入门实践01_下载2560*1080的电脑壁纸

    新版本移步:https://www.cnblogs.com/zy7y/p/13376228.html 附上代码 # !usr/bin/env python # -*- coding:utf-8 -*- ...

  2. Python爬虫入门教程 13-100 斗图啦表情包多线程爬取

    斗图啦表情包多线程爬取-写在前面 今天在CSDN博客,发现好多人写爬虫都在爬取一个叫做斗图啦的网站,里面很多表情包,然后瞅了瞅,各种实现方式都有,今天我给你实现一个多线程版本的.关键技术点 aioht ...

  3. 爬虫之爬取豆瓣top250电影排行榜及爬取斗图啦表情包解读及爬虫知识点补充

    今日内容概要 如何将爬取的数据直接导入Excel表格 #如何通过Python代码操作Excel表格 #前戏 import requests import time from openpyxl impo ...

  4. requests-html库轻体验-HTMLSession下载表情包

    requests-html实战,HTMLSession下载斗图啦最新表情包 前言 在这篇文章之前,我写了requests入门实践02_下载斗图拉最新表情包用正则表达式提取url,来下载斗图啦最新表情包 ...

  5. python爬取斗图网中的 “最新套图”和“最新表情”

    1.分析斗图网 斗图网地址:http://www.doutula.com 网站的顶部有这两个部分: 先分析“最新套图” 发现地址栏变成了这个链接,我们在点击第二页 可见,每一页的地址栏只有后面的pag ...

  6. sass、less和stylus的安装使用和入门实践

    刚 开始的时候,说实话,我很反感使用css预处理器这种新玩意的,因为其中涉及到了编程的东西,私以为很复杂,而且考虑到项目不是一天能够完成的,也很少是 一个人完成的,对于这种团队的项目开发,前端实践用c ...

  7. 分布式学习系列【dubbo入门实践】

    分布式学习系列[dubbo入门实践] dubbo架构 组成部分:provider,consumer,registry,monitor: provider,consumer注册,订阅类似于消息队列的注册 ...

  8. Django入门实践(二)

    Django入门实践(二) Django模板简单实例 上篇中将html写在了views中,这种混合方式(指Template和views混在一起)不适合大型开发,而且代码不易管理和维护,下面就用Djan ...

  9. 全文搜索引擎Elasticsearch入门实践

    全文搜索引擎Elasticsearch入门实践 感谢阮一峰的网络日志全文搜索引擎 Elasticsearch 入门教程 安装 首先需要依赖Java环境.Elasticsearch官网https://w ...

随机推荐

  1. 深入理解JVM(③)学习Java的内存模型

    前言 Java内存模型(Java Memory Model)用来屏蔽各种硬件和操作系统的内存访问差异,这使得Java能够变得非常灵活而不用考虑各系统间的兼容性等问题.定义Java内存模型并非一件容易的 ...

  2. 如何实现 token 加密

    jwt举例 需要一个secret(随机数) 后端利用secret和加密算法(如:HMAC-SHA256)对payload(如账号密码)生成一个字符串(token),返回前端 前端每次request在h ...

  3. JavaScript学习 Ⅴ

    十. 一些对象 Date 对象 Date对象用来表示一个时间 创建Date对象 如果直接使用构造函数创建一个Date对象,则会封装为当前代码执行的时间 var d = new Date(); 创建一个 ...

  4. classpath路径(转)

    src不是classpath, WEB-INF/classes,lib才是classpathWEB-INF/ 是资源目录, 客户端不能直接访问, 这话是没错,不过现在的IDE编译器在编译时会把src下 ...

  5. Unity-JobSystom

    什么是Job System? 一个job system通过创建jobs而不是线程来管理多线程的代码.Job是一个小的工作单元,不等同线程.管理运行在多个核心上的一组工人线程(worker thread ...

  6. JVM详解之:java class文件的密码本

    目录 简介 一个简单的class ClassFile的二进制文件 class文件的密码本 magic version 常量池 描述符 access_flags this_class和super_cla ...

  7. WinForm微信扫码登录

    源码还需优化,不喜勿喷. 微信官方文档 : https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat ...

  8. ThinkPHP6 核心分析之Http 类跟Request类的实例化

    以下源码分析,我们可以从 App,Http 类的实例化过程,了解类是如何实现自动实例化的,依赖注入是怎么实现的. 从入口文件出发 当访问一个 ThinkPHP 搭建的站点,框架最先是从入口文件开始的, ...

  9. java基础(11)--封装

    一.java面向对象三大特别: 1.封装 2.继承 3.多态   二.封装的作用 1.属性私有化(private) 2.对外提供简单的入口 如公开的set()与get()方法,并且都不带static ...

  10. socket网络(二)

    作用域 python/js语言中,无块级作用域 if 1 == 1: name = 'alex' print(name) python中以函数为作用域 def func(): name = 'alex ...