鏈接提交-js代碼推送進(jìn)化版
關(guān)于鏈接提交中的鏈接js代碼推(′?`*)送,今天曲曲小姐姐特邀專(zhuān)家馬駿,提交推送為大??家分享。代碼
百度站長(cháng)平臺提供鏈接索引的進(jìn)化自動(dòng)提交JS腳本(′?ω?`)已經(jīng)有一段時(shí)日了。用百度自己的鏈接話(huà)講:JS鏈接推送代碼以網(wǎng)頁(yè)為最小對象,服務(wù)于全平臺多終端,提交推送PC站和移動(dòng)站均可使用。代碼安裝代碼的進(jìn)化頁(yè)面在任意平臺(瀏覽器、微信、鏈接微博)被加載時(shí),提交推送頁(yè)面鏈接會(huì )(′▽?zhuān)?)被第一時(shí)間推送給百度,代碼從而提高站點(diǎn)新內容的進(jìn)化發(fā)現速度。
(百度JS鏈接推送代碼)
只(zhi)要把這段代碼放入你的提交推送每個(gè)頁(yè)面中,每當用戶(hù)訪(fǎng)問(wèn)這些頁(yè)面時(shí),代碼就會(huì )通過(guò)這段腳本從百度下載一個(gè)1x1的gif,同時(shí)記錄頁(yè)面此時(shí)此刻的URL地址。
自動(dòng)推送腳本的性能考慮
通過(guò)這段腳本我們可以??看出:
1、它先是判斷了目(′_`)前的協(xié)議類(lèi)型是https還是其他類(lèi)型(如,http,ftp等)??
2、然后下載了百度官方的一個(gè)js文件
3、再┐(′?`)┌然后它將js文件(jian)的內容生成一個(gè)腳本塊插入(ru)到當前頁(yè)面中
4、最后會(huì )運行這個(gè)腳本塊
我們可以訪(fǎng)問(wèn)這兩個(gè)js文件查看其內容,也就是短短的一行。它會(huì )讀取這樣一個(gè)gif。
或者
同時(shí)將window.location.href等信息推送給了百度。??
這里我們可以發(fā)現兩個(gè)問(wèn)題??:
其一是這段腳本先后會(huì )調用兩個(gè)百(╯°□°)╯︵ ┻━┻度資源,這造成了冗余,不利于頁(yè)面加載速度。
其二??是該腳本會(huì )提交目前URL,但是許多URL會(huì )是動(dòng)態(tài)??URL,會(huì )帶各種參數。雖然百度爬蟲(chóng)也有自己的判斷方法,但無(wú)疑這增加了其負擔。
于是,??為了解決這兩個(gè)問(wèn)題,筆者咨詢(xún)了好友柴云翔同時(shí)是前端開(kāi)發(fā)的大牛。在大牛的幫助下,我們有了下面這個(gè)改良版本。
改良版本的百度索引自動(dòng)推送腳本
這個(gè)改良的腳本長(cháng)下面這樣,如果你對js一竅不通,那么請用下圖部分(行6~30)替換原來(lái)百??度官方的代碼。
(改進(jìn)后的百度索引鏈接自動(dòng)提交腳本)
在上??圖中已加入了(le)注釋?zhuān)旅骈_(kāi)始代碼解說(shuō)。
這??個(gè)(ge)新腳本的作用是多了一步查看頁(yè)面的canonical URL的步驟。我們知道canonical屬性??表示該頁(yè)面縱有千種URL(◎_◎;)的花樣,請搜索引擎只認準href中給出(chu)的URL值。這樣一來(lái)就不會(huì )讓搜索引擎為了同一個(gè)頁(yè)面(或??許已經(jīng)索引了)多次檢查你的推送頁(yè)面具體內容。
最后,一點(diǎn)感想
自動(dòng)推送是一個(gè)很實(shí)用的方法,它門(mén)檻低,容易部署,但是也有一些小問(wèn)題。本文只是提供了一種方法來(lái)改進(jìn)自動(dòng)推送的效率和效果。
需要注┐(′?`)┌意的是百??度隨時(shí)可能更新這??兩個(gè)js文件的內容,雖然該功能上線(xiàn)后一直沒(méi)有更新不代表以后不會(huì )更新,因此需要手動(dòng)及時(shí)更新代碼。
上述代碼可在這里下載
效果如下:





