为了加快文章的百度收录,我们在文章发布后,主动推送文章URL给百度。
本文介绍 Java 版本推送实现。
百度搜索资源网站官网:https://ziyuan.baidu.com/linksubmit/index
如下图,需要提前新建站点,然后在普通收录页面有一个 接口调用地址,待会需要使用
推送的Java代码如下
package com.liuyanzhao.sens.blog.utils;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
/**
* @author 言曌
* @date 2020/7/24 1:17 下午
*/
public class SEOUtil {
// public static final String BAIDU_POST_URL = "http://data.zz.baidu.com/urls?site=https://liuyanzhao.com&token=XXXXXXX";
public static final String BAIDU_POST_URL = "http://data.zz.baidu.com/urls?site=你的域名URL&token=TOKEN";
/**
* 百度推送
*
* @param urls 可以传一个,也可以多个URL
* @return 提交数量,剩余可提交数量
*/
public static String baiduPost(String... urls) {
if (null == urls || urls.length == 0) {
return null;
}
String result = "";
PrintWriter out = null;
BufferedReader in = null;
try {
//建立URL之间的连接
URLConnection conn = new URL(BAIDU_POST_URL).openConnection();
//设置通用的请求属性
conn.setRequestProperty("Host", "data.zz.baidu.com");
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());
//发送请求参数
StringBuilder sb = new StringBuilder();
for (String url : urls) {
sb.append(url).append("\n");
}
out.print(sb.toString().trim());
//进行输出流的缓冲
out.flush();
//通过BufferedReader输入流来读取Url的响应
in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送post请求出现异常!" + e);
e.printStackTrace();
} finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
public static void main(String[] args) {
// 1、推送单条
String url = "https://liuyanzhao.com/message.html";
baiduPost(url);
// 2、批量推送
String[] urlArr = {
"https://liuyanzhao.com/archive.html",
"https://liuyanzhao.com/recentComment.html",
"https://liuyanzhao.com/message.html"
};
baiduPost(urlArr);
}
}
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏