我们做SEO的期间,有一个环节让很多人为之头痛,那就是文章的采集发布,特别是文章里面的图片让人头痛,为啥?因为现在有很多类似视觉中国那种专门玩图片版权的公司,据Steven的了解在国内不少于几十家。那么你采集的文章中的图片如果刚好是人家公司的版权图片,而且你的网站也起来的不错的情况下,那么人家就可能给你发送律师函。
好家伙,你辛辛苦苦的做站,没赚多少钱呢,人家一张图片就索赔1~2万,你吃得消吗?Steven目前给一家公司做SEO顾问的时候,也出现了这种情况,就是图片侵权。一张图片2W,明码标价。而且你还说不了啥,人家受法律保护滴。我们在做一些站点的时候,对于图片这种东西,能够自己生成,自己拍摄是最好的。如果你是无备案信息的域名,站点也没有留下你的联系方式,那么你还好一点,如果你的站点是备案的,并且你的网站还留下了你的个人信息,那么你就等着被割韭菜吧!
养肥了在宰是这些图片版权平台惯有的手法。所以今天Steven给大家分享一个Python的小demo,这个小案例就是通过你发布的文章的标题文字,去生成一张标题的图片。
Python文字转图片
Python
# coding:utf-8
'''
import pygame,os,time
#文字转图片
def get_txt_image(file_name):
#pygame初始化
pygame.init()
#输入文字
text = u"%s" % file_name
font = pygame.font.Font(os.path.join("C:\Windows\Fonts", "simsun.ttc"), 66)
#渲染图片,设置背景颜色和字体样式,
rtext = font.render(text, True, (255,255,255), (8,46,84))
#获取当前时间,设置为image图片名字
image = get_now_time()
#保存图片
pygame.image.save(rtext, "chengyu_image\%s.jpg" % image)
return image
print('>>>>%s:文字生成图片执行成功!' % image)
#获取当前时间
import datetime,time
def get_now_time():
a = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))
return a
#图片插入原先文章中
def image_into_content(file_name,image):
file_title = file_name + '的成语故事带译文.txt'
file_alt = file_name + '的成语故事带译文'
file_content = open('chengyu/%s' % file_title,'r',encoding='utf-8').read()
content_add = '\n'+'<p style="text-align: center;"><img src="http://127.0.0.2/zb_users/upload/2020/06/%s.jpg" alt="%s" title="%s"></p> ' % (image,file_alt,file_alt)+'\n'
pos = file_content.find('\n')
if pos != -1:
content = file_content[:pos] + content_add + file_content[pos:]
file_content = open('chengyu/%s' % file_title,'w',encoding='utf-8')
file_content.write(content)
file_content.close()
print('>>>>%s加入图片代码成功!' % file_alt)
#批量读取文件夹中的TXT
def read_txt_title():
files = os.listdir('chengyu')
for file_name in files:
file_name = file_name.split('的')[0]
image = get_txt_image(file_name)
# file_name = file_name + '的成语故事.txt'
time.sleep(3)
image_into_content(file_name,image)
read_txt_title()
脚本说明
1、这个脚本的运行逻辑是这样的,首先读取你之前采集的文章,我这里用TXT文章采集保存的,保存在chengyu这个文件夹中,生成个的图片保存在chengyu_image文件夹中。
2、首先需要把采集的文章预先放入chengyu文件件中,然后点击脚本运行,脚本会首先批量读取文章标题信息,然后通过pygame解析出image文件,输出的图片标题格式为当前时间,后缀是JPG格式。
3、再者,生成好image图片后,会再一次对原先的标题文章进行修改,把图片插入到文章当中。
4、最后,文章你可以通过Python链接你网站的MySQL数据库直接上传,image文件你可以通过ftp直接存放到image的专用文件夹中。你也可以用其他的营销软件上传,比如水淼的软件就不错。最后的发布的效果就是这样!
这个脚本的话Steven用的是pygame第三方模块,这个模块开发出来其实是用来做游戏开发的。下载的话 其实很简单,就是在终端输入
pip install pygame
就是通过pygame的渲染去生成图片。具体的逻辑后续有时间我专门写一篇文章。这里不意义叙述。
Ps:
这个脚本是我在测试成语网站的时候,突发奇想想到的一个方法,因为我们也知道,百度官网文档上面明文的表示了,图文并茂的文章更加受到欢迎。那么对于成语站点,我们随便放一张采集的图片,明显不合适,那么我们就让他根据标题自动的去生成站图片,那不就不行了,这样图片和文章还可以有相关性。当然了,这个只是一个小demo而已,其实还可以继续的优化一下,比如说图片的宽高固定,每篇文章插入多少张图片、包括添加不一样的图片背景等等。后续等有时间了,在给大家分享优化好的脚本!