前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python开发个人专属表情包网站

Python开发个人专属表情包网站

作者头像
python学习教程
发布2020-02-11 15:25:51
5770
发布2020-02-11 15:25:51
举报
文章被收录于专栏:python学习教程python学习教程

“表情包”是一种利用图片来表示感情的一种方式。表情包是在社交软件活跃之后,形成的一种流行文化,表情包流行于互联网上面,基本人人都会发表情。

曾经你是否也有过找不到表情包去应对别人的时候。

今天小编分享如何用Python开发个人专属的表情包网站,想用什么表情包搜一下就有了!

本篇分为两部分

1、爬取表情包存入数据库

2、搭建个人个人专属表情网站

爬取包情包存入数据库

环境:Windows+Python3.6

IDE:个人喜好

模块

代码语言:javascript
复制
import requests
import re
import pymysq

完整代码

代码语言:javascript
复制
import requests
import re
import pymysql
# 连接数据库
db = pymysql.connect(host = '127.0.0.1',port = 3306,db = 'db',user = 'root',passwd = 'root',charset = 'utf8')
# 创建游标
cursor = db.cursor()
# cursor.execute('select * from images')
# print(cursor.fetchall())
# 小驼峰
# 注释  获取图片列表
def getImagesList(page):
    # 获取斗图网源代码
    html = requests.get('http://www.doutula.com/photo/list/?page={}'.format(page)).text
    # 正则表达式  通配符  .*?  匹配所有   分组匹配
    reg = r'data-original="(.*?)".*?alt="(.*?)"'
    # 增加匹配效率的  S 多行匹配
    reg = re.compile(reg,re.S)
    imagesList = re.findall(reg,html)
    for i in imagesList:
        image_url = i[0]
        image_title = i[1]
        # format 字符串格式化  %s
        cursor.execute("insert into images(`name`,`imageUrl`) values('{}','{}') ".format(image_title,image_url))
        print('正在保存 %s'%image_title)
        db.commit()
# range 范围      1<=X<1000
for i in range(1,1001):
    print('第{}页'.format(i))
    getImagesList(i)

效果图

网站开发

使用的框架是Flask

代码语言:javascript
复制
from flask import Flask
from flask import render_template
from flask import request
import pymysql
# 404 页面未找到
app = Flask(__name__)
# 装饰器
@app.route('/')  # route 路由
def index():
    # return "hello world"
    return render_template('index.html')
@app.route('/search')
def search():
    # 接收用户关键字
    keyword = request.args.get('kw')
    count = request.args.get('count')
    cursor.execute("select * from images where name like '%{}%'".format(keyword))
    data = cursor.fetchmany(int(count))
    return render_template('index.html',images = data)
# 程序的入口
if __name__ == '__main__':
    db = pymysql.connect(host='127.0.0.1', port=3306, db='db', user='root', passwd='root', charset='utf8',cursorclass = pymysql.cursors.DictCursor)
    # 创建游标
    cursor = db.cursor()
    # 调试模式
    # port  端口号 默认5000
    app.run(debug=True,port=8000)

运行效果图

ps:推荐一下我建的python学习交流扣扣qun:937667509,群里有免费的视频教程,开发工具、电子书籍、项目源码分享。学习python web、python爬虫、数据分析、大数据,人工智能等技术有不懂的可以加入一起交流学习,一起进步!

记得关注评论、转发、收藏哟

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 python教程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档