什麼是API推送javascript
最爲快速的提交方式,建議您將站點當天新產出連接當即經過此方式推送給百度,以保證新連接能夠及時被百度收錄。php
API推送的優勢html
如何使用API推送java
推送接口及參數說明:編程
接口調用地址:http://data.zz.baidu.com/urls...://dorm.cyouagain.cn&token=YYYYYYYYY小程序
參數名稱 | 是否必選 | 參數類型 | 說明 |
---|---|---|---|
site | 是 | string | 在搜索資源平臺驗證的站點,好比www.example.com |
token | 是 | string | 在搜索資源平臺申請的推送用的准入密鑰 |
百度給出API推送的幾種示例,分別爲:curl推送、post推送、php推送、ruby推送。具體推送示例請看百度搜索資源平臺。數組
接下來主要說下POST推送和具體實例。ruby
post推送示例:微信
POST /urls?site=https://dorm.cyouagain.cn&token=TnYdbTSKloOytG2sHTTP/1.1 User-Agent: curl/7.12.1 Host: data.zz.baidu.com Content-Type: text/plain Content-Length: 83 http://www.example.com/1.html http://www.example.com/2.html
推送反饋:curl
推送成功狀態碼爲200,可能返回如下字段:
參數名稱 | 是否必選 | 參數類型 | 說明 |
---|---|---|---|
site | 是 | string | 在搜索資源平臺驗證的站點,好比www.example.com |
success | 是 | int | 成功推送的url條數 |
remain | 是 | int | 當天剩餘的可推送url條數 |
not_same_site | 否 | array | 因爲不是本站url而未處理的url列表 |
not_valid | 否 | array | 不合法的url列表 |
成功返回示例:
{ "remain":99998, "success":2, "not_same_site":[], "not_valid":[] }
推送失敗狀態碼爲4xx,返回字段有:
參數名稱 | 是否必選 | 參數類型 | 說明 |
---|---|---|---|
error | 是 | int | 錯誤碼,與狀態碼相同 |
message | 是 | string | 錯誤描述 |
失敗返回示例:
{ "error":401, "message":"token is not valid" }
注:以上均來自於百度搜索資源平臺
根據上面的說明,咱們使用Java語言完成網站連接資源主動提交,推送方式選用POST。主要分爲如下幾個步驟:
獲取site和token信息: 獲取信息請看另外一看文章《百度網頁收錄API提交助手使用說明》,這裏就再也不重複了。注:具體獲取教程在文章第二部分
整理須要提交的資源連接: 將你要提交的連接整理在一塊兒,方便批量提交。
編寫代碼: 這部分就是本教程的核心了。具體代碼以下:
package baiduUrlSubmit; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.URL; import java.net.URLConnection; public class Test { private static final String URL="http://data.zz.baidu.com/urls"; public static void main(String []args) { String url="http://data.zz.baidu.com/urls?site=https://cyouagain.cn&token=TnYdbTSKloOytG2s"; String site="https://cyouagain.cn"; //改成本身站點的site值 String token=""; //改成本身站點的token //須要提交的資源連接 String []urlsArr= { "https://cyouagain.cn/posts/3700.html", "https://cyouagain.cn/posts/17293.html", "https://cyouagain.cn/posts/31763.html", "https://cyouagain.cn/posts/51772.html", "https://cyouagain.cn/posts/23110.html", "https://cyouagain.cn/posts/31183.html", "https://cyouagain.cn/posts/51512.html", "https://cyouagain.cn/posts/5070.html", "https://cyouagain.cn/posts/65258.html", "https://cyouagain.cn/posts/21025.html", "https://cyouagain.cn/posts/24621.html", "https://cyouagain.cn/posts/22575.html", "https://cyouagain.cn/posts/5780.html", "https://cyouagain.cn/posts/46042.html", }; //將urlsArr數組轉化爲字符串形式 String urlsStr=urlsArrToString(urlsArr); //打印結果 System.out.println(Post(site,token,urlsStr)); } public static String Post(String site,String token,String urlsStr) { String result=""; PrintWriter out=null; BufferedReader in=null; try { //創建URL之間的鏈接 URLConnection conn=new URL(URL+"?site="+site+"&token="+token).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()); out.print(urlsStr); //進行輸出流的緩衝 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); } finally{ try{ if(out != null){ out.close(); } if(in!= null){ in.close(); } }catch(IOException ex){ ex.printStackTrace(); } } return result; } //Array轉String public static String urlsArrToString(String []urlsArr) { String tempResult=""; for(int i=0;i<urlsArr.length;i++) { if(i==urlsArr.length-1) { tempResult+=urlsArr[i].trim(); }else { tempResult+=(urlsArr[i].trim()+"\n"); } } return tempResult; } }
查看結果: 運行上面的程序後,看到結果以下:
上面的程序已經實現了網站資源的主動提交,可是也存在一些問題。如:
應以上使用缺陷,一款在線提交網站資源小程序誕生了。它能讓網站管理人員轉心作SEO優化,再也不受運行環境、使用平臺等因素的干擾。除此之外,小程序依附於微信,能在多平臺使用,操做簡單,無需安裝。
百度API網站資源提交小程序體驗地址:
百度API網站資源提交小程序體使用說明: 網站、網頁資源快速收錄百度API提交助手。
感謝你使用網站資源提交助手,此小程序僅做爲學習參考,獲取源碼請在公衆號【C you again】後臺私信。歡迎各大網站轉發,但請註明原地址。