seo无插件自动实现tag关键字内链
你做SEO的链接建设正确吗?链接是网络的支柱,但并非所有的链接都是一样的。正确的链接可以提高网页的信任度,而错误的链接则会完全破坏您的信任度,而且需要很长时间才能恢复。所以给文章自动添加关键词链接是非常有必要的。
能使用tag关键词自动内链的插件有很多,但是插件用的多了肯定影响性能,所以能用代码就不用插件。今天我们看一下如何用代码实现关键词内链。
步骤一
首先我们得实现准备好关键词和对应的链接,这个可以如果会Python的童鞋肯定就是可以从文件或数据库里面去读取啦。然后就将它们组合成字典的形式,类似下面这样。
keyword_maps = {'央视网': 'http://www.yangshi.com',
'卫星': 'http://www.weixing.com',
'国际商业': 'http://www.guojishangye.com',
'物联网': 'http://www.wulianwang.com',
'星座': 'http://www.xingzuo.com'}
步骤二
接下来就是要把这些要添加锚文本的关键词组合成正则表达式。
anchor_re = re.compile(rf"({'|'.join(keyword_maps.keys())})")
为什么用正则表达式呢?因为正则表达式书写简单,而且速度很快。如果你用for循环的话,估计是效率就很差了。因为for循环需要两次迭代才行。
步骤三
利用正则表达式找出文章中都包含哪些关键词,并利用集合去重。
# 这里文章内容
text = """央视网消息:中国国际商业航天高峰论坛10月19日在湖北武汉举行。
记者从论坛上了解到,我国正在建设的首个卫星物联网——“行云工程”进展顺利,
预计将于2023年前后建设完成由百余颗卫星组成的“物联网星座”。
目前第一阶段建设任务已全面完成。"""
include_word = set(anchor_re.findall(text))
步骤四
利用循环遍历找出来的关键词,然后用正则将关键词替换成a标签链接即可。
for kw in include_word:
link = keyword_maps.get(kw)
text = re.sub(rf'({kw})', rf'<a href="{link}">\g<1></a>', text, count=1)
效果如下:
这里的话只是首次出现的时候进行替换,如果想要全部替换那么把count=1
这个参数删除掉就好了