百度站长工具上提供了链接推送的功能,让广大站长更加方便的把自己的链接推送到百度,增加收录的机会和缩短收录时间(当然,百度也说了,你提交了链接,我不一定收录!)
百度提供了好几种方式,有主动推送,自动推送,sitemap推送等。今天我们要说的就是主动推送,从字面意思上就可以明显的看出,主动推送,就是指站长自行将链接推送给百度。那么如何实现呢?其实原理很简单,就是把要推送的链接post到百度指定的地址去就可以了。
下面我们用C#来实现,源代码如下:
//推送链接到百度 private string PostUrl(string data) { try { string url = "http://data.zz.baidu.com/urls?site= 这里改成你的网站域名 &token= 这里改成你自己的token "; HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url); request.Method = "post"; request.UserAgent = "curl/7.12.1"; request.ContentType = "text/plain"; request.ContentLength = data.Length; //将参数转成byte数组并写到request中 Stream stream = request.GetRequestStream(); byte[] byt = Encoding.UTF8.GetBytes(data); stream.Write(byt, 0, byt.Length); stream.Close(); //获取响应 HttpWebResponse response = request.GetResponse() as HttpWebResponse; if (response.StatusCode == HttpStatusCode.OK) { //注意这里要根据网站编码格式变换 using (StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("UTF-8"))) { //返回请求结果 string result = sr.ReadToEnd(); response.Close(); return result; } } else { //连接失败 return null; } } catch { return null; } }
调用代码:
PostUrl("你要推送的链接地址,比如http://www.itc8.com/detail/2016/0114/6475.html");
推送成功的话会返回如下格式的JSON字符串
{"remain:xxx","success":0},其中xxx表示你今天还能再推送多少条链接。一般新网站的话每天只可以推送500条,注意,推送重复的链接也是要减少条数的。
推送完毕后,第二天就可以看到前一天的推送情况。