python如何爬取个性签名


Posted in Python onJune 19, 2018

思路

改进原博主文章(Python GUI?Tkinter简单实现个性签名设计)的代码,原先的代码是基于Python2的,我这份代码基于Python3 并针对当前的网站做了相应调整

前置要求

Python 3.X
tkinter
PIL

完整代码

# -*- coding:utf-8 -*-

from tkinter import *
import tkinter
import requests
import re
from PIL import Image


def download():
  start_url = 'http://www.uustv.com/'
  name = entry.get().encode('utf-8')
  if not name:
    return
  data = {
    'word': name,
    'sizes': '60',
    'fonts': 'jfcs.ttf', # 个性签
    # 'fonts': 'qmt.ttf', # 连笔签
    # 'fonts': 'bzcs.ttf', # 潇洒签
    # 'fonts': 'lfc.ttf', # 草体签
    # 'fonts': 'haku.ttf', # 合文签
    # 'fonts': 'zql.ttf', # 商务签
    # 'fonts': 'yqk.ttf', # 可爱签
    'fontcolor': '#00FF00'
  }
  result = requests.post(start_url, data=data).content
  # 截止20180302 网站CSS变动
  reg = '<div class="tu">.*<img src="(.*?)"/></div>'
  # byte转string
  result = bytes.decode(result)
  img_url = start_url+re.findall(reg, result)[0]
  # 避免了原代码在Win下无法正常写入文件的问题
  name = 'tmp'
  response = requests.get(img_url).content
  with open('{}.gif'.format(name), 'wb') as f:
    f.write(response)
  try:
    im = Image.open('{}.gif'.format(name))
    im.show()
  except Exception as e:
    raise e


root = tkinter.Tk()
root.title('个性签名设计')
root.geometry('+800+300')
Label(root, text='姓名', font=('微软雅黑', 15)).grid()
entry = Entry(root, font=('微软雅黑', 15))
entry.grid(row=0, column=1)
button = Button(root, text='设计签名', font=('微软雅黑', 15),
        width='15', height=1, command=download)
button.grid(row=1, column=1)
root.mainloop()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
flask中使用SQLAlchemy进行辅助开发的代码
Feb 10 Python
python实现快速排序的示例(二分法思想)
Mar 12 Python
python输出100以内的质数与合数实例代码
Jul 08 Python
利用Python如何批量更新服务器文件
Jul 29 Python
Python简单处理坐标排序问题示例
Jul 11 Python
django 自定义过滤器(filter)处理较为复杂的变量方法
Aug 12 Python
Python趣味实例,实现一个简单的抽奖刮刮卡
Jul 18 Python
python打包多类型文件的操作方法
Sep 21 Python
详解查看Python解释器路径的两种方式
Oct 15 Python
jupyter notebook远程访问不了的问题解决方法
Jan 11 Python
Python实现位图分割的效果
Nov 20 Python
python实现手机推送 代码也就10行左右
Apr 12 Python
详解TensorFlow查看ckpt中变量的几种方法
Jun 19 #Python
TensorFlow 滑动平均的示例代码
Jun 19 #Python
python3个性签名设计实现代码
Jun 19 #Python
TensorFlow 模型载入方法汇总(小结)
Jun 19 #Python
python3爬虫之设计签名小程序
Jun 19 #Python
Python GUI Tkinter简单实现个性签名设计
Jun 19 #Python
TensorFlow数据输入的方法示例
Jun 19 #Python
You might like
锁定年轻人的双倍活力 星巴克推出星倍醇即饮浓咖啡
2021/03/03 咖啡文化
php empty()与isset()区别的详细介绍
2013/06/17 PHP
PHP生成不重复随机数的方法汇总
2014/11/19 PHP
搭建Vim为自定义的PHP开发工具的一些技巧
2015/12/11 PHP
php获取目录中所有文件名及判断文件与目录的简单方法
2017/03/04 PHP
Laravel 实现Controller向blade前台模板赋值的四种方式小结
2019/10/22 PHP
简单三步,搞掂内存泄漏
2007/03/10 Javascript
jQuery帮助之筛选查找 children([expr])
2011/01/31 Javascript
鼠标移到图片上变大显示而不是放大镜效果
2014/06/15 Javascript
JavaScript设计模式经典之工厂模式
2016/02/24 Javascript
jQuery 中的 DOM 操作
2016/04/26 Javascript
javascript检测移动设备横竖屏
2016/05/21 Javascript
Vue.js表单标签中的单选按钮、复选按钮和下拉列表的取值问题
2017/11/22 Javascript
简述vue中的config配置
2018/01/23 Javascript
vue.js项目 el-input 组件 监听回车键实现搜索功能示例
2018/08/25 Javascript
解决前后端分离 vue+springboot 跨域 session+cookie失效问题
2019/05/13 Javascript
关于element-ui的隐藏组件el-scrollbar的使用
2019/05/29 Javascript
vue-cli3+ts+webpack实现多入口多出口功能
2019/05/30 Javascript
基于jquery ajax的多文件上传进度条过程解析
2019/09/11 jQuery
JS实现盒子拖拽效果
2020/02/06 Javascript
Windows下python2.7.8安装图文教程
2016/05/26 Python
Python 模拟购物车的实例讲解
2017/09/11 Python
Python使用struct处理二进制的实例详解
2017/09/11 Python
python中列表和元组的区别
2017/12/18 Python
详解python中asyncio模块
2018/03/03 Python
在Python中使用Neo4j的方法
2019/03/14 Python
详解Python基础random模块随机数的生成
2019/03/23 Python
Python嵌套函数,作用域与偏函数用法实例分析
2019/12/26 Python
利用CSS3实现圆角的outline效果的教程
2015/06/05 HTML / CSS
大学本科生的个人自我评价
2013/12/09 职场文书
企业统计员岗位职责
2013/12/13 职场文书
委托书范本
2014/04/02 职场文书
2015医院个人工作总结范文
2015/05/21 职场文书
大学生读书笔记范文
2015/07/01 职场文书
优秀创业计划书分享
2019/07/19 职场文书
业余无线电通联Q语
2022/02/18 无线电