網際網路機器人是如何構建的?

瞭解網際網路機器人的基本組成元素。

學習目標

閱讀本文後,您將能夠:

  • 更具體地瞭解機器人是什麼以及它的工作方式

相關內容


想要繼續瞭解嗎?

訂閱 TheNET,這是 Cloudflare 每月對網際網路上最流行見解的總結!

請參閱 Cloudflare 的隱私權政策,了解我們如何收集和處理您的個人資料。

複製文章連結

「機器人」是什麼意思?

網際網路機器人是在網路上執行的電腦程式。機器人被程式設計為自動執行某些動作,例如爬行網頁、與使用者聊天或嘗試入侵使用者帳戶。

與工廠中使用的製造機器人或機器人愛好者構建的「戰鬥機器人」不同,網際網路中的機器人實際上只是帶有資料庫的幾行程式碼。另一種說法是,網際網路機器人是對電腦的一組指令,加上資訊的集合。大多數機器人的設計相當簡單,但有些機器人更複雜,並使用人工智慧 (AI) 試圖模仿人類行為。

對於大多數開發人員來說,編寫機器人相當容易,有時甚至對於非開發人員也是如此。這是機器人在網際網路上如此普遍的原因之一。在某些情況下,甚至不需要編寫實際的程式碼行就可以建立機器人。例如,Twitter 為使用者提供了一個視覺化介面來建立在社交網路上發推、轉發、點讚和執行其他動作的機器人。

網際網路機器人有哪些主要元件?

機器人的架構通常包括以下內容:

  • 應用程式邏輯
  • 資料庫
  • API 整合

應用程式邏輯是機器人開發人員編寫並由電腦執行的可執行、機器可讀程式碼。上面的聊天機器人程式碼範例屬於此類別。

資料庫是一個資料集合,機器人從中提取資料,以便知道要執行的動作。機器人可以將其他資訊儲存到其資料庫中,例如當 Web 剽竊機器人從網站下載內容時。

API 允許機器人使用外部功能,而無需開發人員編寫它們。開發人員所要做的就是將正確的命令新增到程式碼中,機器人將根據需要叫用 API。

(API 可用於整合其他人已經建置的複雜軟體功能。將 API 視為在編寫應用程式時避免「重新發明輪子」的一種方式。例如,聊天機器人可以使用天氣應用程式的 API 為使用者提供有關天氣的詳細資訊(如果他們要求的話)。這樣,聊天機器人就不需要追蹤天氣本身,它只需叫用外部天氣應用程式的 API 即可。

與使用者更習慣與之互動的應用程式不同,大多數機器人沒有使用者介面。這是因為網際網路上的機器人通常與網頁、應用程式和 API 互動,而不是與使用者(儘管它們可以透過聊天社交媒體和其他通道與使用者互動)。

網站和應用程式如何處理過多的機器人流量爬?

由於機器人的建立相對簡單,因此它們在網際網路上非常普遍——大約一半的網際網路流量來自機器人,包括善意機器人和惡意機器人

像網路爬蟲機器人和聊天機器人之類的部分機器人,對於幫助網際網路正常運作以及使用者找到所需資訊至關重要。但是,過多的機器人流量可能會使 Web 資產的原始伺服器不堪重負,惡意機器人可能發起各種網路攻擊。為了防止這些情況發生,網站和 Web 應用程式可以戰略性地使用 robots.txt 檔案,實作速率限制並利用機器人管理解決方案。

想要更深入地瞭解機器人開發?請參閱這篇有關如何編寫無伺服器聊天機器人的部落格文章