seo清洗百万长尾词数据的策略

前言

如果不是一名CEO主动高薪挖掘、空降过来的seo负责人,老实说,很多seo人员在公司里都处于“弱势群体”。

绝大多数普通的seo人员在公司里、跨部门沟通里都没有太多相应话语权,有很多的细节工作得不到相关配合。

处于这样一个环境,seoer想要工作出色,必须充分发挥主观能动性,想尽一切办法完成那些明面上不值一提、暗地里又不可避免的事情。

问题

全网大批量挖掘长尾词,这是seo和sem必须做的事情,但是大批量的长尾词注定会带来一些数据清洗工作,多数情况下清洗的工作可以在Excel完成,但是也有很多情况是Excel很难搞定的,比如:

这是一份从第三方关键词工具下载的“引流”这个词根的长尾词数据,但是碰到了一个尴尬的问题,“引流”这个词根存在同义但有不同场景的情况,所以会导致挖掘到很多不相干的长尾词:

其实这种情况是很普遍的,单单一个词汇,经常避不可免的与其他场景混淆,又比如:

水果里的“苹果”和手机里的“苹果”和电影里的“苹果”,这又是同形但完全不同义的词汇,简单的利用词根去挖词自然会挖掘到很多非目标长尾词。

还有很多类似情况,那么问题来了:剔除非目标长尾词是必须要做的事情,这样一个seo工作里的细枝末节,做好是理所当然的。老板一不会帮我们做、二也不会给我们配人做,如果这是一份百万级别的长尾词数据,都靠在Excel里筛选剔除,可能项目已经黄了。

面对这样一份杂乱无章的长尾词数据,如何使用高效的方式过滤筛选?


今天这篇文章是一篇完全基于技术的内容,但是对于不会技术的朋友我反而强烈建议充分的看一下,有两点:

技术是另一种思维方式,对于不会技术的朋友可以看看技术人员在碰到问题时是如何处理的。

在“互联网营销”工作中,有很多工作是超出我们能力范围之外的,但是充分发挥我们的主观能动性做出超越这个岗位应有的能力水平往往会带来额外的收获。

开始

前段时间接了一个采集项目(只接熟人之间的合法业务),随着采集量的增大,“敏感词过滤”这项工作避不可免,涉政、涉黄、恐暴、广告等,这些相关字眼都得识别出来。

目前在市面上可以搜集到的敏感词库,随便整合几份就能达到几万甚至更多,因为随着时间的前进,会产生各种各样的新词汇。

用程序识别一篇文章是否包含目标敏感词,以Python举例:

refusalWord = '敏感词'
targetText = '内容正文'
if refusalWord in target_text:print(True)

让程序把这个敏感词拿到目标文本里寻找,找得到就说明存在敏感词,这是敏感词只有一个的情况下,如果敏感词是多个的话,那也简单,加个循环:

refusalWord = ['敏感词1','敏感词2','敏感词3']
targetText = '内容正文'
for word in refusalWord:
    if word in target_text:print(True)

程序把一个个敏感词拿到目标文本里寻找,如果敏感词是几百个呢,一个个反复处理显得效率很低下,感觉还不太优雅,正则表达式可以很简洁的搞定:

import re

refusalWord = ['敏感词1','敏感词2','敏感词3']
targetText = '内容正文'
if re.search('|'.join(refusalWord),targetText):print(True)

所有敏感词用“|”连接形成一段正则表达式:“敏感词1|敏感词2|敏感词3”,用这段表达式去匹配目标文本,找出所有出现的敏感词。

但是,如果敏感词是几万个甚至更多呢?了解正则的朋友都知道,再用这种方式写出来的表达式就显得极其不合理,可能还会有各种问题。

而且敏感词有几万个甚至更多的情况下,效率是线性递减的,再加上后期做的替换等其他工作,时间成本就更高了。

并且,我们前面的演示还只是目标文本只有1个的情况,如果敏感词数是N,目标文本是M呢?简单双循环的情况下,时间复杂度至少是N * M。

这个时候就需要用到我们今天的主角:“AC自动机”算法。

PS:不懂技术的朋友不必纠结代码,只需要明白这是一个方案优化的问题&

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值