memelol
memelol
Download popular meme. Edit images and text with PIL
In [ ]:
import requests
import nltk
import getpass
import random
import PIL
from PIL import ImageDraw, ImageFont
import shutil
from IPython.display import Image
from IPython.core.display import HTML
In [638]:
myusr = getpass.getuser()
In [639]:
mepat = ('/home/{}/memetemp/'.format(myusr))
In [641]:
reqmempop = requests.get('http://version1.api.memegenerator.net/Generators_Select_ByPopular?pageIndex=0&pageSize=24')
In [ ]:
genres = reqmempop.json()
In [642]:
for ger in genres['result']:
#print(ger)
response = requests.get(ger['imageUrl'], stream=True)
namimg = ger['urlName']
#print(len(namimg))
#print(namimg)
with open('{}{}.jpg'.format(mepat, namimg), 'wb') as out_file:
shutil.copyfileobj(response.raw, out_file)
del response
meing = PIL.Image.open('{}{}.jpg'.format(mepat, namimg))
#meing
medraw = ImageDraw.Draw(meing)
#font = ImageFont.truetype("/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf", 32)
#font = ImageFont.truetype("/home/wcm/Downloads/fashi954.ttf", 12)
fontwo = ImageFont.truetype('/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf', 48)
medraw.text((10, 10), namimg, (255,0,0), font=fontwo)
meing.save('{}{}.jpg'.format(mepat, namimg))
In [1036]:
selpo = ('http://version1.api.memegenerator.net/Instances_Select_ByPopular?')
In [1037]:
#reqinst = requests.get('{}languageCode=en&pageIndex=0&pageSize=1&urlName={}'.format(selpogenres['result'][gere]['displayName']))
In [1122]:
disnam = list()
In [1123]:
ranpa = '/home/{}/meme/'.format(myusr)
In [1124]:
ranres = random.choice(genres['result'])
In [1125]:
ranres['imageUrl']
Out[1125]:
In [1126]:
ranres['urlName']
Out[1126]:
In [1127]:
disnm = ranres['displayName']
In [1267]:
response = requests.get(ranres['imageUrl'], stream=True)
with open('{}{}.jpg'.format(ranpa, disnm), 'wb') as out_file:
shutil.copyfileobj(response.raw, out_file)
del response
In [1268]:
meeim = PIL.Image.open('{}{}.jpg'.format(ranpa, disnm))
In [1269]:
Image('{}{}.jpg'.format(ranpa, disnm))
Out[1269]:
In [1270]:
#meetest = PIL.Image.new("RGBA", (640,640), (255,255,255))
medraw = ImageDraw.Draw(meeim)
#font = ImageFont.truetype("/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf", 32)
#font = ImageFont.truetype("/home/wcm/Downloads/fashi954.ttf", 12)
fontwo = ImageFont.truetype('/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf', 32)
medraw.text((10, 10), disnm, (0,0,0), font=fontwo)
In [1271]:
meeim.save('/home/wcm/Downloads/success.jpg')
In [1272]:
Image('/home/wcm/Downloads/success.jpg')
Out[1272]:
In [1273]:
for gere in range(0,24):
#print(genres['result'][gere]['displayName'])
disnam.append(genres['result'][gere]['displayName'])
#print(reqinst.json())
#reins = (reqinst.json())
#reqinst = requests.get('{}languageCode=en&pageIndex=0&pageSize=1&urlName={}'.format(selpo, genres['result'][gere]['displayName']))
#reins = (reqinst.json())
#print(reins)
#except Error:
# pass
#else:
# print(reins['result'][0])
#reins = (reqinst.json())
#print(reins['result'][0])
#if 'text0' in reins['result']:
# print(reins['result'][0])
In [ ]:
In [1274]:
#disnam
In [1275]:
jodis = ' '.join(disnam)
In [1276]:
''.join([str(jodis) for jodis in random.sample(jodis, len(jodis))])
Out[1276]:
In [1277]:
random.shuffle('wgewrgwgw')
In [1278]:
tokens = nltk.word_tokenize(jodis)
In [ ]:
In [1279]:
#for tok in tokens:
#print(tok.lower())
# for tolo in tok.lower():
# print(tolo)
In [1280]:
meimg = requests.get('https://api.imgflip.com/get_memes')
In [1281]:
mejsn = meimg.json()
In [1282]:
lenme = len(mejsn['data']['memes'])
In [1283]:
#PIL.Image
In [1284]:
imgpath = ('/home/{}/fashion/'.format(myusr))
In [1285]:
jurimg = PIL.Image.open(imgpath + 'fashion.jpg').convert('LA')
In [1286]:
jurimg.save(imgpath + 'greyscale.png')
In [1287]:
Image(imgpath + 'greyscale.png')
Out[1287]:
In [ ]:
In [1288]:
jurblack = PIL.Image.open(imgpath + 'greyscale.png')
In [1289]:
jurother = PIL.Image.open(imgpath + 'fashion2.jpg')
In [1291]:
Image(imgpath + 'fashion2.jpg')
Out[1291]:
In [ ]:
In [1290]:
jurthis = PIL.Image.open(imgpath + 'life.jpg')
In [1152]:
jurother.size
Out[1152]:
In [1153]:
jurthis.size
Out[1153]:
In [1154]:
jurconv = jurthis.resize((1000, 562), PIL.Image.ANTIALIAS)
In [1155]:
jurimg.size
Out[1155]:
In [1156]:
jurother.mode
Out[1156]:
In [1157]:
jurimg.mode
Out[1157]:
In [1158]:
jurthis.mode
Out[1158]:
In [1293]:
jurcol = jurimg.convert('RGB')
In [1303]:
blenim = PIL.Image.blend(jurconv, jurcol, 0.7)
In [ ]:
In [1304]:
blenim.save(imgpath + 'blend.jpg')
In [1305]:
Image(imgpath + 'blend.jpg')
Out[1305]:
In [1306]:
mebig = meeim.resize((1000, 562), PIL.Image.ANTIALIAS)
In [1307]:
#blenim = PIL.ImageFilter.GaussianBlur(jurblack)
In [1308]:
#blenim.save(imgpath + 'blend.png')
In [1309]:
ble = PIL.Image.open(imgpath + 'blend.jpg')
In [1310]:
bleda = ble.getdata()
In [1311]:
#out = PIL.Image.FLIP_LEFT_RIGHT(ble)
In [1312]:
myrot = ble.rotate(180)
In [1313]:
myrot.save(imgpath + 'rot.png')
In [1314]:
blenow = PIL.Image.blend(myrot, mebig, 0.4)
In [1315]:
blenow.save(imgpath + 'blendz.png')
In [1316]:
Image(imgpath + 'blendz.png')
Out[1316]: