三十九、简单几步做到外链自动生成,从此妈妈再也不用担心我的SEO
2017-01-25 11:56
302 查看
搜索引擎排名最关键的数据是高质量外链,无法被被人收录,我们就自己做一个收录自己的网站,同时用最佳的相关性生成高质量外链,百度也无法辨别真伪
请尊重原创,转载请注明来源网站www.shareditor.com以及原始链接地址
具体方案
用抓取回来的所有网页做一个简单的好文站,用来做外链,引流量。然后写一个complete_link.py,遍历所有CrawlPage,找到content没有标记过<a>的,拿它的title去查elasticSearch,得到的第一篇文章,提出这篇文章的标题做成anchor添加到content尾部为什么做高质量外链?
搜索引擎判断一个网站质量的好坏,主要会看有没有优秀的网页指向了它,就好比“你自己说你好,你不一定真的好,很多人说你好,你才是真的好”。强调高质量,就是说不是什么外链都起到加分的作用,如果在新浪头条引用你的网站,那会加分,一个垃圾站提到你,没有什么用。怎么样的外链是高质量的?
首先引用你的网站比较优秀,本身打分比较高,那么你就会被抬高。其次,需要有优秀描述的锚文本,优秀体现在:简短的话,准确表述。百度对网页的标题和锚文本是最高优先级做相关性匹配的,所以标题和锚文本非常重要。然后,重复的引用不要太多,以免被判为垃圾。为什么用elasticSearch?
这不是重点,重点是要找到一个最相关的链接,这样用户转化才够精准,找到这样的链接不求多,一个就够了。为什么用标题作为锚文本
因为标题是对这篇文章最好的描述。锚文本内容是用来做检索召回的,用户搜了这个词,才会返回这个结果。详细步骤
安装elasticsearch的python扩展pip install elasticsearch
创建complete_link.py,内容如下:
# coding:utf-8 import sys reload(sys) sys.setdefaultencoding( "utf-8" ) import MySQLdb import re from conn import Conn from elasticsearch import Elasticsearch es = Elasticsearch() conn = Conn().getConnection() cursor = conn.cursor() upcursor = conn.cursor() sql = "select id, title, substring_index(content,'相关原创文章,敬请关注',1) from CrawlPage where content not like '%</a>'" cursor.execute(sql) for row in cursor.fetchall(): id = row[0] title = row[1] content = row[2] title = re.sub('\[|\]|\/|\'|\"|\(|\)|\!|\?|\~','',title) try: res = es.search(index="app", body={"fields":["title"],"size":1,"query": {"query_string": {"query":title}}}) for hit in res['hits']['hits']: print "process:", title update_sql = "update CrawlPage set content=CONCAT(content,\"%s%s%s%s%s\") where id=%d" % ( " 相关原创文章,敬请关注:<a href='http://www.shareditor.com/blogshow/?blogId=", hit['_id'], "'>", hit['fields']['title'][0], "</a>", id) upcursor.execute(update_sql) conn.commit() except Exception,e: print "Error:" print title print e sys.exit(-1)
请尊重原创,转载请注明来源网站www.shareditor.com以及原始链接地址
讲解一下
update_sql = "update CrawlPage set content=CONCAT(content,\"%s%s%s%s%s\") where id=%d" % ( " 相关原创文章,敬请关注:<a href='http://www.shareditor.com/blogshow/?blogId=", hit['_id'], "'>", hit['fields']['title'][0], "</a>", id)
这是生成链接的样子,锚文本是文章标题,链接指向文章页面
res = es.search(index="app", body={"fields":["title"],"size":1,"query": {"query_string": {"query":title}}})
是查询elasticSearch搜博客,取第一条,因为第一条是相关性最高的一篇
有关elasticSearch的python接口详细可以参考:http://elasticsearch-py.readthedocs.io/en/latest/
最终效果
相关文章推荐
- 从此妈妈再也不用担心我的View冲突了
- 【机器学习PAI实践十一】机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码
- 搞好SEO外链不用愁 活学经验就这么简单
- 【玩转数据系列十五】机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码)
- 机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码)
- IBatis简单实现(附主键自动生成)其SqlMap XML文件配置
- 简单工程Makefile的自动生成
- 简单的从数据库中读取数据自动生成XML
- IBatis简单实现(附主键自动生成)
- [原创]不用工具简单删除一键ghost生成的C_PAN.TXT文件
- jquery让两个div高度自动适应 不用再看别的方法了 这个最简单
- 超级简单:共享两个自动生成存储过程的工具
- prjDAOTest - 不安装Excel,自动生成Excel文件 - 超简单事例 - VB6 + DAO
- ABAP 自动生成EXCEL文件并作简单格式处理
- 简单两点让SEO外链工作变的更高效
- jquery让两个div高度自动适应 不用再看别的方法了 这个最简单
- 简单工程Makefile的自动生成
- AutoCode (vs插件)自动生成代码插件 下载及使用教程(C#版)( 更新简单自定义模板教程)
- 数据自动生成工具 DataFactory 的简单使用
- 利用反射+特性实现简单的实体映射数据库操作类(还未做自动生成SQL语句部分)