解决方案:当网站被挂大量垃圾外链时的解决方法
优采云 发布时间: 2022-09-27 20:10解决方案:当网站被挂大量垃圾外链时的解决方法
大家都知道,外链可以增加网站的权重值,带来一定的辅助功能。但是,如果您的外部链接属于低质量的垃圾外部链接,那么,那对您有好处。 网站 的权重值无济于事,反而会对你的网站 造成很大的伤害。很多网站站长朋友平时都在努力网站宣传,却突然发现自己的网站里面有很多垃圾外链。这时候大家都想知道,对于已经链接了很多网站的垃圾外链有什么办法呢?
1、检查网站不是马
网站如果很多垃圾外链是别人故意掉的,这个时候大家千万不要着急,首先一定要检查一下你的网站是否被挂了,如果你的 网站 前一天还好,但是第二天出现了很多外部链接。那样的话,很有可能网站已经挂了,这种事情完全是你的服务器的安全或者程序流的安全导致挂马,然后,一大堆垃圾产生了连接。这时候大家一定要找到挂马的部分,立即清除挂马的连接页面,然后,在克服了网站空间的安全性和系统的安全性之后,就是足以修复网站的系统漏洞。
2、使用robots.txt屏蔽文件目录
在克服网站的主机空间安全和程序流安全,并完成网站的系统漏洞修复后,接下来,就可以使用robots.txt搜索模块了协议文件开发已阻止文件目录。那么,我们应该怎么做呢?我们可以找到被挂断的连接路径的特征。例如,如果您的网页页面的路径特征收录“?”,那么,仅在 Load the robots.txt 协议书:Disallow:/?就是这样。
3、定期更新网站详情
实现了上述使用后,下面就是定期更新具体内容网站,那么,如何才能考虑定期更新内容呢?比如你每天上午10:00更新这篇文章的具体内容,那么你必须保证这个时间范围和要更新的文章内容的总数,而不是今天更新,而不是明天更新, 是获取 10 款游戏文章 的内容一次更新是不好的,在保证定期升级后,还要注意升级后的文章 的质量,因为,目前,各大搜索引擎对文章的质量标准都很强,如果你网站或者只是清理了很多垃圾外链,升级后的文章要多加注意质量高,一定要升级高质量的原创文章内容。
推荐文章:SEO采集海量文章,用倒排索引找出"类似的标题"
截至目前,站群的模式依然有效,使用站群的方法拦截海量搜索流量,偷偷变现是正常的。一个人管理一批网站,内容更新离不开采集。
本文使用倒排索引的逻辑来解决SEO采集场景下的“标题相似”问题,顺便引入了一个小算法。过一段时间,它会结合这个小算法,分享一个“重要热点并自动推送到微信”的案例。
倒排索引是搜索引擎检索的基石。理解倒排索引有助于理解搜索引擎的排序逻辑。很多SEO朋友甚至不知道基本的排序规则,无法将这些规则结合到日常优化中。 SEO 就是感觉。
我在文章中偶尔出现的一些技术细节和小想法,表面上看起来离赚钱还很远,但实际上正是这些小东西支撑了一个人的判断力,当机会来临时正确的选择。
每个 SEOer 都亲自指导或完成了采集,因为网站内容的数量和质量对于增加流量至关重要。早年的PC时代,自媒体的概念还没有盛行。如果一个网站的内容制作完全靠公司编辑组的几个同学,很可能撑不过他被开除的那一天。那个时候,版权和原创的概念还是很模糊的。 网站 20% 的内容是 原创,80% 的内容是 采集。我认为这是行业的良知。 , 网站内容互相采集是业界的常态,个别站长的网站内容大多从第一篇开始。
2016年,看了市面上大部分的采集工具(当时一般是优采云,现在好像也一样),用我的少数产品思维来反感它,简单地用Python开发了一个采集工具:
时隔四年,我有些感慨。人越是缺少什么,就越喜欢炫耀。他们的技能很差,尤其是英语。因此,在设计界面时,专门用英文表示了相关的字段和标题。很辣。
但是到现在我仍然不认为这个工具的功能已经过时了。我曾经评论过曹政先生的公众号。我是一个喜欢动脑筋,不喜欢动脑筋的人。重复的事情让我重复10次和8次。我必须考虑自动化它,否则我会开始生气。
他们为什么会鄙视市面上的采集工具,因为我跟着他们的流程,发现流程不够灵活,不够全面。我希望这个工具完成后,我不需要去想任何问题,我只需要按照步骤进行,我会把所有可能的情况都尽可能地设计进去。本工具可对接三大主流开源内容管理系统:dedecms、phpcms、ecms,接口自行编写,整体模型如下:
以自己的网站为一级目录,该目录收录多个target采集网站为二级目录,每个采集网站 contains 收录多个列,每列存储自己的采集规则和历史记录。一般情况下,一天存几万件是没问题的。
程序支持:随时切换自己操作的不同操作网站,自动调用预设目标网站和规则。
每个目标网站的采集规则支持添加、删除、修改、搜索、保存、导入和导出。单个目标可以设置多组规则,根据页面自动识别最优爬取规则。 html 格式(删除所有其他 HTML 标记,同时保留原创段落)
特定字符替换、特定规则的字符替换(常规)、图像提取和链接补全。按网站,立柱旋转采集,定时定量,自动判断重量,自动入库,等待审核。
说到判断权重,我们来到今天的话题:“相似标题”的判断权重问题。当你打开程序,它开始工作,从你为它配置的每个网站中抓取内容,相当于整个网络采集,目标网站本身和目标网站 之间可能有 文章 重复。
一个网站中的同一个文章一般是同一个链接,除了技术或人为问题,所以只要让程序判断链接是否完全一样,很简单。
相同的不是存放在库中,而是存放在不同的网站中,因为大家都在挑挑拣拣,很有可能采集是一模一样的文章,而且多个文章标题和文字相同 文章 也是如此,同时发布在 网站 上,从优化的角度来看是不可取的,尤其是在 采集 的情况下,长-term 自动化 采集 无需人工干预,久而久之会积累很多重复的内容,那么网站离死不远了。
所以除了初步的链接判断外,还应该加上标题的判断,不管是内部的网站还是直接的网站和网站,如果要进入图书馆,你必须做出判断。
如果标题完全一样,处理方式和链接一样,直接丢弃即可。麻烦的问题是标题都差不多。
假设网站中目前有10篇文章这样的文章,标题为(以微博热搜为例):
四字哥借蔡国庆坐沙发,特朗普团队说有死票。美国队回应与拜登的对抗。阿云嘎可以把钢琴借给蔡国庆躺下。李东旭给孔刘送咖啡车支持拜登 称特朗普拒不承认选举结果尴尬 专家建议女性退休年龄延长至55岁最后一件网购对女性事业影响2万倍菅义伟首相想第一个见到拜登
此时程序采集抓取了一篇文章文章,标题为:
拜登说特朗普拒绝承认选举结果令人尴尬
它与现有数据库中的标题具有相同的含义。它描述了一件事。标题几乎相同。 “造人”。
如果我们让程序自动判断这两个标题是否相同,那么对于一台要么为0要么为1的计算机,它给出的结果是:不。但我们显然不能让这样的文章重新进库,所以必须有合适的处理方式,让程序能够识别,同时我们网站数据库中可能有几亿甚至更多这个方法的标题是有效的,但必须考虑效率,不能花几秒钟的时间做出判断。
那段时间,我也很不适应。我在 Internet 上没有找到任何可以解决此问题的工具。它们都是一样的,被丢弃了。词的不同也算不同文章。
一段时间后,我在搜索引擎书籍中了解到“倒排索引”的概念。
我们想一想:为什么百度或谷歌可以在毫秒内搜索到我们需要的内容?
其实支持的技术方案有很多,但所有的方案都是以“倒排索引”为前提的。正是“倒排索引”使得“搜索”的行为同时大大提高了检索效率。具有一定的相关性。
倒排索引:
假设这是我们的数据库,文档是网页或文章文章,我们在这里使用标题,当用户搜索时:特朗普
因为没有完全相同的(可以找到完全相同的时刻),数据库一一查找,取出收录特朗普的文档对应的ID,可以得到:2、6 ,因此我们找到了用户需要的相关内容。
但是如果里面有100亿条数据,不知道怎么求猴年马月。这时候,我们再建一张这样的表:
如图所示,我们为单词创建另一个表。表中的每个单词都是唯一的。哪些文档收录每个单词,并列出 ID。
当用户搜索时:特朗普和拜登,搜索引擎细分:特朗普,拜登 根据第二张表,特朗普的关键词显示涉及:2、6,拜登的关键词是:3、6 记得初中的交集:2、6和3、6取交集,常见的是6,所以本次搜索找到的相关内容是:文档6. 本文档同时收录特朗普和拜登,满足基本相关性。
文章可能有上千个,但世界上的词汇量总是有限的,只要一模一样,马上就能查到数据库。
不管第一个表有多少亿的数据,通过第二个表我们可以瞬间找到所有收录目标关键词的文档ID,然后使用文档ID去第一个表直接检索交集。 ,无需一一检查。这第二张表是:倒排索引,也称为反向索引。
至于所谓的正向索引,我觉得没有这个概念,只是倒置后的相对而已。
当时得知这个想法后,真的很感动。一开始大家是怎么想出来的,让我印象深刻。
此应用程序适用于文档 (文章)。看完之后我在想:能不能把文章换成标题,用这个思路来判断标题是否极其相似?如果你已经有了初步的想法,说明倒排索引的思路已经理解了。
告诉我技术细节:
会遇到这个问题,正在考虑解决方案的肯定是技术人员,所以干脆给出核心代码,用Python实现,其实就是dict的设计。此过程还将涉及初步搜索结果。分数计算,SEO朋友不知道的,一起来了解一下吧。
刚才是为了方便理解倒排索引,所以我用一个简单的例子来解释一下它是如何为我们的搜索工作的。其实,搜索引擎在检索数据的时候,并不是简单的取出所有的文档ID来获取交集。这会有大问题。
这是一个比较专业的知识。我自己对此并没有深入的了解。我只是依靠这些想法来解决业务问题。有兴趣的朋友可以看看这本书:《这就是搜索引擎——核心技术详解》 PS:感谢SEO界大神ZERO的各种分享,对我有很大的帮助和进步文章 在早期!
倒排索引建立后,用户搜索时,一般有以下检索逻辑:
一次一个文档,一次一个词结合一次一个文档的跳转指针一次一个文档的本质是取交集的逻辑。我们这里使用一种比较简单的一次一个词的方法。
搜索:Trump和Biden Trump,所有收录它的文件对应的ID是:1、2、3
拜登,对应的文档ID为:3、4、5
淘汰特朗普,1、2、3各得一分
再拿出拜登,1、2、4、5各得一分,3积两分
所以文档 3 是最相关的。这是一次一个字的逻辑。最后,我们得到每个相关文档的相似度得分。从大到小的列表是搜索的初步排名。实际上,我们叠加文档出现的次数来计算分数。在实际检索中,分数并不是简单的这样计算的。每个文档都需要结合很多因素单独计算分数,然后叠加,但是只处理我们的问题就足够了。
核心代码:
# 存储历史入库的所有标题,相当于表1<br />seen_title ={<br /> '1':['拜登称特朗普拒绝承认选举结果令人尴尬'],<br /><p> '2':['特朗普团队称出现死人票']
}
<br />
# 把标题对应分词单独建表,方便提取(与表1同步更新)title_word ={<br /> '1':['拜登','特朗普','拒绝','承认','选举','结果','令人','尴尬'],<br />
'2':['特朗普','团队','出现','死人票']
}
<br />
# 表2,单词对应的所有包含它的标题ID(与表1同步更新)word_id ={<br /> '特朗普':set(['1','2','3']),<br />
'拜登':set(['3','4','5'])
}
<br />
# 求余弦值
defcount_cos(new_word,old_word): return cos<br /><br />
# 计算相关性得分
defget_doc_id(title):<br /> # defaultdict创建的整数型字典,存储文档得分<br /> id_count = defaultdict(int)<br /> # 存储本次新增标题的所有分词<br /> new_word =[word.encode('utf-8')for word,flag in pg.cut(title)]<br />
# 循环提取每个单词对应的所有文档ID并计算得分 for word in new_word:<br /> # 数据库里没有记录的单词忽略计算<br /> if word notin word_id:continue<br />
for ids in word_id[word]:id_count[ids]+=1
<br /> # 最终得到所有文档的最终得分,降序<br /> id_count = sorted(id_count.items(),key=lambda x:x[1],reverse=True)<br /> # 取得分最高的与本次标题计算余弦值,大于目标值就算类似重复,反之其他的相似度更低,不必计算<br /> return count_cos(new_word,title_word[id_count[0][0]])>=0.8<br /><br />get_doc_id(title)</p>
2016年,我没有写向量分类。最后一个比较是使用“Shingle”算法提取文本块。相对来说,向量更合适,整体查询速度基本保持在几毫秒以内。
这是基本的处理模型。其实我们可以看到,随着数据的增加,计算速度会线性增加(还好不是指数),内存开销也很可怕,所以我们需要采取一些方法来保持稳定性。
比如分段存储、文本转md5等,如果不能增加机器数,几百万千万数据是没有压力的。
虽然我学过数据库,但当时我不在课堂上。毕业后,我只知道几个数据库的名字。显然,使用数据库会更好。太费劲了,有更好的方法,欢迎提出建议。
用这样的思路处理SEO-采集流程-标题重了,这样的问题好像有点矫枉过正了,简直是刀杀鸡,特别是好像远了钱。
很多人都不愿意做,但把一件事做到极致,往往是拉开与对手距离的关键。
接下来说一下开头提到的小算法:
我们刚才说是为了方便理解倒排索引。事实上,整个倒排索引是非常复杂的。为了支持其正常运行,必须设计很多技术方案,比如存储方式、更新逻辑、检索方案等,同时我们刚才提到的内容并不是简单的存储在数据库中,尤其是表1 :
这里我们只存储文档中收录哪些单词。其实在一个文章中,总有一些词是不相干的,有没有没关系,反之,有些词最能代表这个文章写的是文章 的主题。
当用户搜索时:特朗普和拜登一起喝茶
有一个文档只收录“together”这个词,但是你要知道这样一个词会出现在不同领域的各种文章中,一点也不稀奇,这个词并不重要,删除它也不影响文章所表达的主题。
所以我们不能简单地认为这个文档也和搜索词有关。鉴于此,我们必须计算出文章中哪些词是重要的,哪些词不重要。重要的是,为它们计算一个单独的权重值,例如:
每个单词在这个文章中都有它的权重值。这些权重值可以添加到刚才提到的文档相关性分数的计算中。这种分数更有意义和相关。更高,而这个权重值的计算是:TF-IDF算法。
我们用小明的日记来解释:
小明10天写了10本日记。我们想知道小明在今天的日记里做了什么。正常人看完之后,看到了攀登的乐趣,看到了攀登的风景,看到了攀登的感觉。我们知道小明今天去爬山了。
但是这10天来,小明没有爬过山,所以其他的日记里也没有出现攀登这个词。
反过来说:“今天天气晴朗,万里白云飘”,几乎是全国小学生第一次尝试自己的文采。
如你所见,这些词出现在很多日记中,对理解某一个文章没有帮助。
在某篇文章文章某个分类中,有一些词在该分类的其他文章中反复出现,但很少出现,这些词是最具描述性的文章主题,反过来,总是出现在任何文章中的词对理解文章没有帮助,也不重要和相关。
这就是TF-IDF的简单思路。
TF-IDF 用于评估一个词对文章 文章 的重要性(权重)。一个词的重要性与它在文章中出现的次数成正比,与它在其他文章中出现的次数成反比。
TF-IDF计算出来的值就是我们刚才在一个文章中提到的一个词的权重,这个文章和结合它计算出来的搜索词的相关性得分是很有效的, TF-IDF的公式和具体理解可以参考百度百科。
TF-IDF的应用比较少,基本用在搜索引擎上。我用它来做一件事。
在互联网发达的今天,每天发生在我们身上的各种事情都是通过媒体平台推送给我们的,包括国家重大事件、娱乐八卦、行业资讯等。如何判断今天发生的哪件事比较突出?核心的关键主题是什么?
今年年初,因为疫情,我一直待在家里。我也做了一件事。我写了一个热点推送工具,自动推送昨天出现在各大平台的热点。
推送给我的内容是按权重计算的,哪些热点出现在多个平台上,哪些热点在过去一段时间内不可用。最后形成一个简单的报告,每天早上9:00准时推送到我的微信。
这里我看到了一个初步的申请:
我们都知道,能火遍全网的热点,总是首先出现在泛媒体上,经过一系列的发酵和传播,到达全网讨论。
比如抖音或者微博往往会先显示一些热点新闻。事情开始传开后,知乎相关的讨论问题也出现了,然后是公众号的头条等。自媒体开始跟风写内容。
我在想:对于常年蹲点热点的自媒体同学们,如果能找出一些泛媒体平台上普遍讨论的热点,这些热点可以可以在知乎公众号等上找到。等到地方还没出现的时候,可以擦键盘开始准备擦吗?
我不是专业的自媒体,常年炙手可热的自媒体同学们各有各的专业。我经常看到的一个现象是:当抖音微博上刚刚出现一个热点话题的时候,知乎还没有出现,后来出现知乎相关问题的时候,基本就是一个热点了列表,第一个嘲讽的回答可以在几分钟内获得数万个赞。
蹭热点拦截本身的逻辑价值无需验证。关键是这个方法能不能让我们及时擦。
目前只是猜测,还在思考这个工具的其他用途,后面会写下相关方法。
插入一个事件:
很多朋友经常加我问一些已经回答了很多次的问题,包括技术和思考。
时不时会有朋友问能不能在评论里加谁谁是谁的微信账号,想联系他或者买他的源码。
陆续有朋友利用文章的思路取得了一些成果,但毕竟是小部分。更多的人因为基础薄弱而无法起步,缺乏指导。
程序员普遍缺乏营销思维,运营商不懂技术,双方互相仰视。
有鉴于此,我前段时间决定成立一个读者交流群来解决以上问题。
目前自媒体方面只是我花时间去操作,很多情况下不能投入太多精力。开一个微信群,我要负责管理,随时回答各种问题,会消耗很多精力。 ,这也是我犹豫的地方。
不过考虑到上述问题会随着时间的推移反复出现,开个微信群可以缓解很多,利大于弊。
关于费用,如果有正式的入团费用,当然不用担心精力的投入。正是因为进群不收费,我才不得不考虑开不开。
虽然不收费,但有一点门槛,我不希望它是一个聊天群。
先说一下组的价值或意义:
最重要的是你可以问我所有文章所涉及的任何技术问题、思考问题、实际操作、应用场景等,我会在群里解答。
Python、seo、sem、信息流、产品、运营、数据等,专业的我会回答,非专业的我会给出自己的建议。
对于互联网创业、自由职业、副业、个人技能提升等问题,以及信息不畅、项目选择等判断性问题,我也有一些看法。
我会优先在群里推送新的内容或资源。
其他方面:
如果读者和朋友想相互联系,可以私下联系他们。我不会参与,只是提供一个方便。
允许以特定频率宣传自己或自己的业务,包括文章或社区。
正在考虑的另一点是问答式咨询。你有一个其他人怀疑的专业领域。小组中有人提出问题,而您愿意提供答案。那么我会很乐意扮演一个桥梁的角色,但是如何保证双方的权益是一件很麻烦的事情,需要重新考虑流程设计。 知乎的付费咨询风气还没有起,很大程度上是其流程简单粗暴造成的。
关于群的门槛,本质上不打算收费,但原则上不欢迎聚会,和看文章不同,文章发帖是为了人见人,但是群里是互相交流的地方,相信大家都不受欢迎,所以进群门槛的逻辑如下:
过去有人主动为我付费:付费阅读文章,付费咨询(不管知乎还是公众号,不管多少钱),发送私下给我一个红包(不管多少),不管我收不收,不管多少),这些朋友不求就自告奋勇。我尊重你尊重他人贡献的态度。请直接加入群。
相反,请转10元,这是对我和其他付出的人的尊重。没有这些朋友的积极反馈,我是不可能继续制作的。同时,我也让这些付出过的朋友知道,一切都进来了。是一个像他一样愿意交换和付出的人,让我们能够平等交流。
毕竟这个群没有正式的商业产品或服务,所以不会正式收费。 10元只是说说态度。我不可能在群里一一查到谁付了钱。对于这个问题,不能本末倒置,多花精力。
我相信大多数人仍然是诚实的人。如果真的有不诚实的,请相信我:圈子不大。
之所以选择微信群方式,是因为我目前没有精力去运营一个社区。此外,实际上还有很多优秀的类似社区。如果这个群体的价值是显而易见的,对大家的个人提升和事业都有好处。推荐和资源交流确实很有帮助。未来我们会考虑专业的问答社区,专注于解决实际问题。
群二维码:
如果已满或过期请加我备注:入群
因为担心被打扰,所以没有邀请一些原本是朋友的朋友。如果你需要加入这个群,请告诉我。
周末刚到,让有需要的人进来,下周一起讨论。