Googlebot要能讀取網站的CSS和JavaScript檔案

Google能看懂CSS、JavaScript了,robots.txt設定不要再封鎖搜尋引擎讀取這些內容

    Google 2014年10月27日公告要網站管理員調整robots.txt檔設定,開放搜尋引擎機器人讀取CSS、JavaScript檔案,並且用很強烈的措辭警告如果網站的robots.txt檔案設定封鎖搜尋引擎抓取JavaScript以及CSS文件,將會影響排序演算法運作、以及搜尋引擎索引狀態,且會影響、降低SEO排名。

    過去搜尋引擎只會查看HTML程式碼,檢索裡面的文字以及連結,讀取網頁文字的方式有點類似盲人的網頁閱讀機。但是隨著技術的進步,網站內容不再只有文字內容,組成網站頁面的程式,也不只有HTML,CSS、JavaScript已經是建構網頁畫面的基礎程式語言,對畫面組成、樣式有很重大的影響。

    Google認為搜尋引擎必須要讀取、理解CSS以及JavaScript檔案,並嘗試組成畫面,盡可能讓搜尋引擎讀取到的畫面能夠接近、並類似於使用者從瀏覽器上面所看到的畫面,如此才能更正確的判斷網頁的內容,使用者瀏覽網站所感受到的感覺等…而現在Google搜尋引擎的技術也可以做到這點,所以Google提出了這個要求。

 

Google搜尋引擎讀取CSS、JavaScript會造成哪些影響?

    當Google搜尋引擎開始讀取、分析並呈現CSS、JavaScript、HTML、PHP程式所共同組合出的網頁畫面,Googlebots可以模擬使用者使用常見Web瀏覽器覽網站的情形,Google將可以看到更多的資訊。

 

瀏覽器看不到的隱藏內容

    過去有些SEO作弊方式是在程式碼內埋入大量的關鍵字,搜尋引擎讀取的時候會看到這些關鍵字、但是透過程式技術隱藏,讓使用者畫面不會看到這些內容,藉由這個操作影響搜尋引擎對網頁內容的判斷。

 

不應該出現的其他內容

    同上,都是設法讓搜尋引擎讀取的網頁內容和實際內容不一樣,欺騙索引蜘蛛,藉此達到他的目的,如搜尋到的是內容,使用者看到的卻是大量的廣告等…

 

正確的評估畫面瀏覽、下載速度

    網頁的下載速度、瀏覽網頁的開啟速度是UX很重要的一個指標,藉由讀取、分析CSS以及JS程式碼,搜尋引擎能夠判斷網頁的開啟速度以及下載時間,尤其現在網頁技術,組成頁面的程式語言CSS、JavaScript佔了很大的比例,忽略這些文件將會錯估網頁的下載時間。

 

可以評估網站與使用者互動的反應速度

    有些設計不良的程式會消耗比較多的運算資源(不論瀏覽端或者伺服器端),有些程式會在背景持續運作、有些程式會在背景持續和伺服器交換資料,這些狀況都會影響使用者瀏覽、操作網頁畫面的感受,以及網路瀏覽的安全性。

 

背景運作:

    一般我們所操作的畫面稱為前台(前景)畫面,如果畫面會依據我們的操作而有所反應,這是我們能夠理解、並知道程式正在運作中。相對的程式運作不影響前台畫面,運作過程並沒有任何提示、不會改變畫面內內容、使用者無法直覺知道程式仍然在工作,這種情形稱之為背景運作。

    背景運作是程式設計的一個常態,為了滿足使用者的需求、或者給予更好的UX體驗,很多情型都需要背景運算,如自動(雲端)備份、更新等。但是也有一些情形對使用者的隱私或安全有危害的,如之前爆發過得某些廠牌手機、或者某些APP會持續抓取、蒐集使用者以及手機內的各種訊息,並回傳伺服器的行為。

 

 

破碎的畫面

    因為網頁畫面已經不只由html組成,如果CSS、JavaScript程式碼撰寫不良,使用者很可能會看到破碎、異常的畫面,如果Google搜尋蜘蛛只讀取html將無法發現這個問題;而使用者搜尋、瀏覽到這個畫面會降低UX感受,這是Google所不願發生的狀況。能夠正確抓取、模擬使用者看到的畫面,才能在搜尋結果中推薦給搜尋使用者更適當的頁面。

 

引述Google公告的最佳索引建議

  • 確保網頁設計符合Progressive enhancement原則,這有助於網站能夠相容於更多的瀏覽器,並確保某些功能不支援或遭到封鎖的時候使用者仍然能看到主要的內容,並保持基本的操作能力。
  • 更快的網頁能夠幫助使用者更容易、且願意瀏覽我們的網站,索引蜘蛛爬取這些頁面也會更有效率,Google建議遵循頁面性能優化的作法,具體內容有:
  • 確認伺服器沒有封鎖Googlebot索引JavaScript和CSS檔案。

 

檢驗、測試Googlebot可以瀏覽、呈現網頁的樣貌

    使用Google Search Console (GSC)Google 模擬器,可以查看Googlebot看到的網頁是什麼樣子,而robots.txt 測試工具可以確認網站robots.txt檔案有沒有封鎖Googlebot讀取網頁,以及檔案有沒有問題和錯誤。