自动提交网站404死链到搜索引擎脚本

大家都知道每个搜索引擎的站长平台都有死链提交工具,为什么要提交死链?引用百度站长平台原话:"当网站死链数据累积过多时,并且被展示到搜索结果页中,对网站本身的访问体验和用户转化都起到了负面影响。另一方面,百度检查死链的流程也会为网站带来额外负担,影响网站其他正常页面的抓取和索引"。 既然要提交死链,那么有没有什么办法能自动收集死链然后提交呢,答案是肯定的,通过shell脚本每天获取404链接然后提交。网上的方法很多,这边引用张戈博客的shell代码

一、获取404链接

#!/bin/bash

#定义蜘蛛UA信息(默认是百度蜘蛛)

UA=+http://www.baidu.com/search/spider.html

#前一天的日期(nginx日志)

DATE=`date +%Y-%m-%d -d "1 day ago"`

#定义日志路径

logfile=/opt/nginx/logs/yangfannie.com.log_${DATE}.log

#定义死链文件存放路径

deathfile=/xxxx/deathlink.txt

#定义网站访问地址

website=http://yangfannie.com

#分析日志并保存死链数据

for url in `awk -v str="${UA}" '$9=="404" && $15~str {print $7}' ${logfile}`

do

grep "$url" ${deathfile} >/dev/null || echo ${website}${url} >>${deathfile}

done

然后把脚本通过定时任务每天跑一次即可。

二、提交死链

404链接获取到了,接下来就可以上百度站长平台提交了。

自动提交网站404死链到搜索引擎脚本

PS:由于脚本是通过nginx的log来获取404链接的,这边就会出现个问题是第一次获取404链接时可能会获取不全的问题,这边可以通过360站长平台的网站安全检测工具来检测出所有的404页面。

weinxin
聂扬帆博客
一个分享IT运维相关工作经验和实战技巧的个人博客

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:1   其中:访客  1   博主  0

  1. avatar 明月登楼的博客 2

    这个不错,可以参考一下!
    话说鸟哥的Begin主题真是高大上呀!