seo之新链接自动推动到搜索引擎(java实现)

简介

最近在开发自己的博客,想着可以让各大搜索引擎能够尽快收录我的网站。在各大搜索引擎的站长平台都绑定了我的网站。网站验证过后发现百度、神马两个平台提供了新链接推动到搜索引擎的接口。在这里记录一下。

封装

我项目为springboot 的。发现无论是百度还是神马发现只有推送的链接是不一样的。所以我在项目中把百度和神马的链接写到了配置文件中。对推送链接到搜索引擎的post方法尽心了封装。

配置文件

searchEngine:
baidu: http://data.zz.baidu.com/urls?site=替换成你的网站域名&token=替换成你的tocken
shenma: https://data.zhanzhang.sm.cn/push?site=替换成你域名&user_name=替换成你的用户名&resource_name=mip_add&token=替换成你的token

封装链接如下

package top.jhone.blog.utils;

import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;


/**
 * 处理搜索引擎自动推送
 * @author zzy
 * @date 2021/4/20 20:26
 */
public class EnginePushUtils {

    private static Logger logger = LoggerFactory.getLogger(EnginePushUtils.class);


    public static String enginePush(String url,String param){
        if (null == url || StringUtils.isBlank(param)) {
            return null;
        }
        String host = "";
        try {
            URL hosturl = new URL(url);
            host = hosturl.getHost();
        } catch (MalformedURLException e) {
            logger.error("发送post请求出现异常,异常原因为:{}",e.getMessage());
            e.printStackTrace();
        }
        String result = "";
        PrintWriter out = null;
        BufferedReader in = null;
        try {
            //建立URL之间的连接
            URLConnection conn = new URL(url).openConnection();
            //设置通用的请求属性
            conn.setRequestProperty("Host", host);
            conn.setRequestProperty("User-Agent", "curl/7.12.1");
            conn.setRequestProperty("Content-Length", "83");
            conn.setRequestProperty("Content-Type", "text/plain");
            //发送POST请求必须设置如下两行
            conn.setDoInput(true);
            conn.setDoOutput(true);
            //获取conn对应的输出流
            out = new PrintWriter(conn.getOutputStream());
            //发送请求参数
            out.print(param.trim());
            //进行输出流的缓冲
            out.flush();
            //通过BufferedReader输入流来读取Url的响应
            in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
            String line;
            while ((line = in.readLine()) != null) {
                result += line;
            }
        } catch (Exception e) {
            logger.error("发送post请求出现异常,异常原因为:{}",e.getMessage());
            e.printStackTrace();
        } finally {
            try {
                if (out != null) {
                    out.close();
                }
                if (in != null) {
                    in.close();
                }
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }
        return result;
    }

}

业务层代码

//baiduUrl shenmaUrl 都是在配置文件里读取的链接。链接获取方式在下面。
 if(getEngineSwitch()){
                String param = domain + "/read/"+article.getId();
                logger.info("向搜索引擎推送的链接:{}",param);
                String baiduRes = EnginePushUtils.enginePush(baiduUrl,param);
                logger.info("百度推送数据结果:{}",baiduRes);
                String shenmeRes = EnginePushUtils.enginePush(shenmaUrl,param);
                logger.info("神马推送数据结果:{}",shenmeRes);
            }

百度

百度站长平台:https://ziyuan.baidu.com/
登录到百度站长平台。绑定网站。认证网站我就不说了。进入平台后依次点击搜索服务->资源提交->普通收录->api提交。可以看到API接口以及推送示例。
百度接口示例图片

神马

神马站长平台 :https://zhanzhang.sm.cn/
同理登录站长平台。绑定网站。认证网站的过程就不说了。按照以下步骤可以获得推动到神马的接口。
在这里插入图片描述

注意事项

最好可以看看接口返回示例。看看是否吧自己网站的新建的url给推动到了两大平台。


欢迎大家访问我的个人博客:zShare个人博客

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

残城碎梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值