发现更大的SEO世界
 找回密码
 注册
搜索
»首页»SEO培训 SEO论坛 SEO交流 帖子
发新帖
fred,请到个人资料页面设置个人签名    [ 版主 ]

批量提取404到百度站长提交死链[改完出错的shell代码]

本帖最后由 fred 于 2014-6-11 14:42 编辑

网站改版,或者删除一些旧的页面,或者有些奇奇怪怪的URL,都会造成蜘蛛抓取这些网页的时候出现404页面,通常数量不多的情况下也可以不必理会。或者可以把时间段拉长点来批量处理掉,或者一个星期或者一个月。我这边有个网站由于改版了,同时还换掉原来的系统,还把旧系统里的数据导入到新的系统里,而且还是用虚拟的目录结构,造成各种各样的404页面,总之,坑爹到极致了。所以大家改版前,一定要慎重,特别注意一下有URL的变动问题,一定要花点时间去处理。好吧,不是说这个问题。。。步骤很简单
1.取一个月的日志文件,合并成一个,提取出404页面的路径,这边用shell提取生成txt文件,百度站长死链提交的文件是txt或者xml的

  1. awk '$3~/^404$/ {print $8}' baidu.log|sort|uniq > baidu404.txt
复制代码


2.提取出来的只是路径/aaa/bbb.html,要批量给他加上域名前缀,例如,www.xxx.com/aaa/bbb.html

  1. sed 's/^/www.xxx.com/' baidu404.txt >baidu404-1.txt
复制代码


生成的baidu404-1.txt文件就可以提交给百度站长平台处理了。我也是第一次通过死链工具提交,不知道效果如何。

另外加多一句,排除掉图片和js路径的
  1. grep -Pv "\.gif$|\.png$|\.jpg$|\.js$" baidu404.txt>newfile
复制代码
  1. grep -vE "(.png|.gif|.jpg|.js)$" baidu404.txt > newfile
复制代码


发表于 2014-6-11 00:55:13
回复 收藏
思明,技术宅男SEO之路    QQ:176089710    

  1. awk '{print $2}' baidu.log|sort|uniq > baidu404.txt
复制代码


这个脚本应该是提取所有的链接,而不仅仅是404.
提取404页面时,可以把一些图片和js之类的路径排除掉。
请楼主确认一下是否有误。
发表于 2014-6-11 09:16:22
回复 收藏
fred,请到个人资料页面设置个人签名    [ 版主 ]

思明 发表于 2014-6-11 09:16
这个脚本应该是提取所有的链接,而不仅仅是404.
提取404页面时,可以把一些图片和js之类的路径排除掉。
...

额,搞错了,多谢提醒,我修改一下。
 楼主| 发表于 2014-6-11 09:17:52
回复 收藏
johnnyzong,请到个人资料页面设置个人签名    

grep -Pv "\.gif$|\.png$|\.jpg$|\.js$" baidu404.txt>newfile
grep -vE "(.png|.gif|.jpg|.js)$" baidu404.txt > newfile
试了一下,好像无法剔除掉图片和js(或css)的404访问信息啊~
发表于 2015-2-5 16:51:29
回复 收藏
快速回复 返回顶部 返回列表