-------------------------------------------------------------------------------------------------------------二更-------------------------------------------------------------------------------------------------------------

   灵光一闪,这么简单的东西为什么我蠢了???

  

 request.urlretrieve(img_url, 'background.jpg')

  当总结写的假的好么?

  然后更改了一下,现在是可以

  功能1:批量下载图片

    功能2:转化为抖音图片(无论提交外链或者本地图片)

  

 #!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/11/15 19:40
# @Author : Empirefree
# @File : 2.py
# @Software: PyCharm Community Edition
import copy
import os
import argparse
import re
import numpy as np
from urllib import request
from PIL import Image
import requests
from lxml import etree #显示下载数据块
def cbk(a,b,c):
'''回调函数
@a:已经下载的数据块
@b:数据块的大小
@c:远程文件的大小
'''
per=100.0*a*b/c
if per>100:
per=100
print('%.2f%%' % per) def Download():
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'}
response = requests.get('http://www.ivsky.com/tupian/ziranfengguang/', headers=headers)
# 使用lxml解析网页
html = etree.HTML(response.text)
img_urls = html.xpath('.//img/@src') # 先找到所有的img i = 0
for img_url in img_urls:
request.urlretrieve(img_url, 'image' + str(i) + '.jpg', cbk)
i += 1
print('已成功保存为/image[].jpg')
print('下载完成!!!') def main(imagepath):
#将图片转换为三维数组
img = Image.open(imagepath)
img_arr = np.array(img)
#提取R
img_arr_r = copy.deepcopy(img_arr)
img_arr_r[:, :, 1:3] = 0
#提取GB
img_arr_gb = copy.deepcopy(img_arr)
img_arr_gb[:, :, 0] = 0
#创建画布并将图片错放开
img_r = Image.fromarray(img_arr_r).convert('RGBA')
img_gb = Image.fromarray(img_arr_gb).convert('RGBA')
canvas_r = Image.new('RGB', img.size, color=(0, 0, 0))
canvas_gb = Image.new('RGB', img.size, color=(0, 0, 0))
canvas_r.paste(img_r, (6, 6), img_r)
canvas_gb.paste(img_gb, (0, 0), img_gb)
img_douyin = Image.fromarray(np.array(canvas_gb) + np.array(canvas_r))
img_douyin.save('douyin.jpg')
img_douyin.show() def IsHttp(imagepath):
if re.search('http', imagepath) != None:
return 1
else:
return 0 if __name__ == '__main__':
# parser = argparse.ArgumentParser()
# parser.add_argument('-i', '--image', help='Image to be processed(give the file path).')
# args = parser.parse_args()
# main(args.image)
print('**************************************************************************')
print('*****************!!!欢迎使用抖音图片加载助手!!!*************************')
print('*****************作者:Empirefree *********************')
print('*****************工具: Pycharm *********************')
print('*****************时间: 2018/10/23 18:49 ********************')
print('**************************************************************************')
while(1):
print('温馨提示(您目前文件路径为):',os.path.dirname(os.path.realpath(__file__)))
fun = int(input('请输入您想选择的功能:[1]批量下载图片 [2]制作抖音图片\n'))
if fun == 1:
Download()
else:
imagepath = input('请输入您的图片路径: ')
if IsHttp(imagepath):
request.urlretrieve(imagepath, 'background.jpg') #下载图片
imagepath = os.path.abspath('background.jpg')
main(imagepath)
print('加载完毕.......')

抖音图片2.0

实验帮助:

  文章末尾有免费源代码、图片和实现的exe供下载,本人博客www.empirefree.top

实现环境:

  python3.6+pycharm(pip什么的自己看错误就可以搞出来了)

实现目标(如下所示):

            

实现效果:

  代码分析:

    1、将图片转换成三维数组,然后对于rgb()这三种颜色提取

    2、Rgb(255, 0, 0) 和Rgb(0, 255, 255)位置改变一下()然后就会有像素错位的效果

     1 canvas_r.paste(img_r, (6, 6), img_r)

    3.然后单纯保存,显示图片即可

     1 img_douyin.save('douyin.jpg') 2 img_douyin.show()

  总结:读者有兴趣可以改变一下外链,我弄图片外链好像爬不下来,太弱了吧,思路就是提交图片外链,然后如果判断是外链就下载到本地,然后再利用本程序改变图片样例,这里你看到喜欢的图片想制作就都可以了,本程序只能搞本地有的图片,很难受,我好菜啊!!!!

分享链接: https://pan.baidu.com/s/19V8cFYQe12h8oiP5E9lk8A 提取码: g8be

Python-制作抖音图片的更多相关文章

  1. Vegas教程:教你制作抖音热门人物穿越门窗特效

    抖音上经常会有很多特效视频,例如换妆.分镜.合拍.放大等,合适的特效总是会让视频更加出彩.这些特效,除了一部分是抖音自带以外,很多都是用的其他视频特效软件制作而成.这些视频编辑软件操作简单易上手,强大 ...

  2. 教你用 Python 实现抖音热门表白软件

    之前在群里看到有人发了一个抖音上很火的小视频,就是一个不正经的软件,运行后问你是不是愿意做我的朋友,但你没法点击到「不同意」!并且没办法直接关闭窗口! 很不正经,很流氓,有点适合我. 效果大概是这样的 ...

  3. Python 爬虫——抖音App视频抓包

    APP抓包 前面我们了解了一些关于 Python 爬虫的知识,不过都是基于 PC 端浏览器网页中的内容进行爬取.现在手机 App 用的越来越多,而且很多也没有网页端,比如抖音就没有网页版,那么上面的视 ...

  4. Python爬虫-抖音小视频-mitmproxy与Appium

    目的:  爬取抖音小视频 工具:  mitmproxy.Appium 思路: 1.  通过 mitmproxy 截取请求, 找出 response 为 video 的请求. 2.  通过 mitmdu ...

  5. Python实现抖音关键词热度搜索小程序(附源码)

    今天给大家带来一个抖音热词小程序,废话不多说,直接上代码 import requests import json import urllib.parse import time ''' python知 ...

  6. 用 Python 下载抖音无水印视频

    说起抖音,大家或多或少应该都接触过,如果大家在上面下载过视频,一定知道我们下载的视频是带有水印的,那么我们有什么方式下载不带水印的视频呢?其实用 Python 就可以做到,下面我们来看一下. 很多人学 ...

  7. python爬虫——抖音数据

    最近挺火的抖音短视频,不仅带火了一众主播,连不少做电商的也进驻其中,于是今天我来扒一扒这火的不要不要的抖音数据: 一.抓包工具获取用户ID 对于手机app数据,抓包是最直接也是最常见的手段,常用的抓包 ...

  8. python爬虫抖音 个人资料 仅供学习参考 切勿用于商业

    本文仅供学习参考 切勿用于商业 本次爬取使用fiddler+模拟器(下载抖音APP)+pycharm 1. 下载最新版本的fiddler(自行百度下载),以及相关配置 1.1.依次点击,菜单栏-Too ...

  9. Python之抖音快手代码舞--字符舞

    先上效果,视频敬上: 字符舞: 代码舞 源代码: video_2_code_video.py 1 import argparse 2 import os 3 import cv2 4 import s ...

随机推荐

  1. Unity shader学习之Alpha Test

    可以在fragment中使用cg的函数--clip来进行透明度测试. 函数定义如下: void clip(float4 x); void clip(float3 x); void clip(float ...

  2. [ Deep Learning ] Keras & TensorFlow安装依赖包

    OS:Mac Python:3.6 一.先安装Keras,再安装TensorFlow 1. 安装Keras Package Version---------- -------h5py 2.7.1 Ke ...

  3. html5-css列表和表格

    td{    /*width: 150px;    height: 60px;*/    padding: 10px;    text-align: center;} table{     width ...

  4. hdu5302 构造

    题意:给你一个无向图,它的边要么是黑色要么是白色,且图上的每个点最多与两个黑边两个白边相连.现在,Demon将图分成两部分,一部分包含所有的黑边,另一部分包括所有的白边,给你白边图中度为0的点的数量w ...

  5. Python -- print(dataframe)时,省略部分列。

    import pandas as pd # 导入后加入以下列,再显示时显示完全. pd.set_option('display.max_rows',500) pd.set_option('displa ...

  6. GGTalk即时通讯系统(支持广域网)终于有移动端了!(技术原理、实现、源码)

    首先要感谢大家一直以来对于GGTalk即时通讯系统的关注和支持!GGTalk即时通讯系统的不断完善与大家的支持分不开! 从2013年最初的GG1.0开放源码以来,到后来陆续增加了网盘功能.远程协助功能 ...

  7. 【Scala学习之二】 Scala 集合 Trait Actor

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk1.8 scala-2.10.4(依赖jdk1.8) spark ...

  8. python编程快速上手第7章习题20

    20.如何写一个正则表达式,匹配每 3 位就有一个逗号的数字?它必须匹配以下数字:'42''1,234''6,368,745'但不会匹配: '12,34,567' (逗号之间只有两位数字) '1234 ...

  9. Spring源码阅读(五)

    这一讲我们分析真正的bean实例创建方法——doCreateBean,源码分析如下 /** * Actually create the specified bean. Pre-creation pro ...

  10. python中从键盘输入内容的方法raw_input()和input()的区别

    raw_input()输出结果都是字符串 Input()输入什么内容,输出就是什么内容