Greasemonkey

，簡稱GM，中文俗稱為“油猴”，是Firefox的一個附加元件。它讓使用者安裝一些腳本使大部分HTML為主的網頁於使用者端直接改變得更方便易用。
Greasemonkey可替網頁加入些新功能（例如在亞馬遜書店嵌入商品比價功能）、修正網頁錯誤、組合來自不同網頁的資料、或者數繁不及備載的其他功能。寫的好的Greasemonkey腳本甚至可讓其輸出與被修改的頁面整合得天衣無縫，像是原本網頁裡的一部分。

**技術明細**
大部分Greasemonkey使用者腳本都是自行撰寫，使用對某網站專用的JavaScript代碼，透過文檔對象模型（DOM）介面對網頁內容做操作。//userscripts.org/ userscripts.org維護了個Greasemonkey資料庫。該資料庫描述哪個網址網頁對應到哪個腳本。（注意： 廢棄腳本倉庫可能還保留許多還沒合併到//userscripts.org/ 新倉庫的腳本）。但由於userscripts.org在2014年5月發生技術故障而無法訪問，一些開發者另設網站以發佈腳本，Greasemonkey官網也在其官方Wiki站點設立 列表date=20140521130640 以展示這些網站。
當使用者載入匹配的網頁，Greasemonkey便呼叫相關的腳本，而該腳本便根據腳本內容改變網頁的內容。Greasemonkey腳本亦能透過非網域綁定的XMLHTTP要求來查詢外部HTTP資源。Greasemonkey亦遵循某使用者名.user.js的格式，這讓當該特定使用者拜訪時Greasemonkey可自動偵測並提供安裝選項。除了JavaScript代碼，Greasemonkey腳本包括有限可選用後資料集。該後資料集描述了腳本名稱、腳本描述、網址用來區分同名腳本的位址空間、以及原本該腳本為哪些網址撰寫的列表。-  Greasefire擴展fix-attempted=yes ：同Greasemonkey擴展配合使用，自動顯示在userscripts.org的腳本庫中是否存在可以在當前正在瀏覽網站上使用的腳本，如果存在Greasemonkey的猴頭圖標背景就會變為彩色的。右鍵點擊猴頭圖標，最上面一行就是打開當前網站可用腳本列表的選項。- Platypus（）附加元件可讓使用者可以編輯網頁（刪除或者移動某礙眼的部分）。Platypus隨後將結果存成常駐的Greasemonkey腳本。fix-attempted=yes 

**典型的腳本**
使用者群已發展大量的腳本，以下是其中的一些應用：- 調整Gmail讓Google Reader內嵌，因而提供RSS新聞訂閱的選項。- 當線上瀏覽某本書時同時顯示對手網站同本書價錢。- 去除來自某些站的廣告，包括彈出視窗與Google文字廣告。- 改變網頁的版面，包括原本該網頁作者未考慮到的元素大小與瀏覽器畫面大小。- 自動完成表單。- 瀏覽某些佈告欄網站自動過濾特定的發帖人。- 增刪網頁上的某些功能。- 讓使用者從某些影片站點如Google Video以及YouTube存下FLV或MP4影片檔案。- 從現行網頁找尋任何RSS新聞訂閱，並將它們顯示在可擴展、漂浮於網頁上的面板裡。- 將百度貼吧輸入框裡的文字轉換為圖片發表，或者在發貼時自動附加指定語句（俗稱“小尾巴”）。

**隨使用者腳本引發之技術、操作、及道德上的問題**
許多Firefox社群的成員，以及相當多的技術分析師，警告Greasemonkey的使用氾濫，並且相關的使用者腳本技術需要在發佈時更注意。他們的關注包括：- 可能讓某些廣告網站生意受阻。許多Firefox使用者已經利用Adblock Plus屏閉掉網頁廣告，不過Greasemonkey可被用來換掉原廣告主的廣告成為它競爭對手的廣告。這導致對網頁廣告人為灌水，或者戲弄被付費廣告商的統計程式。- 增加網站每頁的垃圾流量。某些Greasemonkey腳本是設計來取得使用者拜訪哪些網頁的額外資訊，比如那些從del.icio.us、黑米、或者-{Bloglines}-提供的腳本。如果這些腳本被廣泛使用，它們有可能造成被拜訪網站不必要的額外流量。- 隨著許多網頁專用的腳本激增，分辨某網頁的問題是實際上網頁編程上的BUG，還是訪問者本地端Greasemonkey腳本的困難度也隨之增加。基於如此，抓蟲除錯更為麻煩。- 腳本錯誤大致肇因於Greasemonkey開發者與網站開發者缺乏互動。- Greasemonkey只有對HTML網頁有效，對於Flash、Flex，以及Silverlight開發的網頁無效。- 多樣化網際網路應用程式對Greasemonkey腳本開發者來說比靜態網頁更困難控制。這是因為該網頁程式執行越多的邏輯，Greasemonkey作者得考慮得越複雜才不會打擾到原本程序的功能。- 原本的網站開發者推出新版時會造成相對應Greasemonkey腳本停止工作。因此，沒有與原本網站開發者互動而撰寫的Greasemonkey腳本可能在一時發揮作用，但終非長遠之計。

**Greasemonkey與其它瀏覽器的相容性與相等軟體**

**其他Mozilla為基礎的瀏覽器**
Greasemonkey可直接用於Firefox、Flock、與Epiphany。Epiphany Greasemonkey是Epiphany附加元件包的一部分。然而，該附加元件並不完全相容於2.15.1版，導因於某些Greasemonkey應用程式介面功能（例如：GM_getValue）不支援。此外，也有自訂版本的SeaMonkey：。

**Opera**
Opera第8版也增加了 使用者腳本功能date=2012-09-10 。隨著Opera與Firefox支援W3C文檔對象模型（DOM），許多Greasemonkey使用者腳本現在在Opera下執行正確。

**Konqueror**
Konqueror使用者腳本 date=20160326095109 是一種給KDE Konqueror的網頁修改工具，其目的在相容於Greasemonkey腳本與後資料集。它以一種KPart而存在。

**類似軟體**
  Scriptish具備和Greasemonkey一樣的作用，所有Greasemonkey腳本都能在Scriptish中運行。Scriptish源於Greasemonkey，但對後者做了改進。- Proxomitron，開發於1990年代晚期，程式於JavaScript前載入並主動監視HTTP串流，因此它為跨瀏覽器相容，並且透過正則表達式相似的比對語言提供類似Greasemonkey的功能。-  Proximododate=20051214124409 受proximitron啟發並可相互操作；是一種開源軟體，客戶端代理伺服器所以允許對網頁內容動手腳。-  Privoxy date=20210130112517 是一種開源軟體，客戶端代理伺服器所以允許對網頁內容動手腳。它支援很多操作系統。-  MouseHole是一種開源軟體，客戶端代理伺服器，允許對網頁內容透過Ruby動手腳。-  Monkeygrease date=20201129141035 是一種JavaServlet可用來修改客戶端接收到之前的Java（版權軟體）網頁程式輸出。-  Chickenfoot date=20161021225956 是一種Firefox的附加元件用於讓終端使用者與駭客於網頁上腳本互動。-  給Firefox用的iMacrosfix-attempted=yes 是一種Firefox的附加元件讓使用者紀錄並重播所謂「網際網路巨集」，用來執行網頁自動化、分析網頁、以及測試網頁。- Stylish是一種Firefox的附加元件透過改變用戶端的CSS，進而改變網頁的編排。- Bookmarklets可以在任何網頁隨心所欲的執行JavaScript，不過它需要使用者點擊啟用，而非自動執行。- Firebug是一種開發者附加元件讓使用者隨心所欲的透過DOM即時改變網頁。

**其他選擇**
在沒有附加元件像Greasemonkey的情況下，修改網站也可以透過下面幾種方式：- 於網址列鍵入javascript:，或者使用bookmarklets。- 使用瀏覽器的DOM檢視器。- 使用本地端HTTP代理伺服器，如WebWasher、Privoxy或Proxomitron以更改HTML。- 使用Opera瀏覽器 + 使用者.js腳本。

**參見**
 Adblock- Firefox擴充套件列表

**參考文獻**

**外部連結**
  Greasemonkey下載站點（自動本地化）-  Greasemonkey官方網站date=20121207114526 -  Greasemonkey Wiki date=20080820150412 -  Greasemonkey source code date=20210104182820 - 《 一頭栽進Greasemonkeydate=20110726001216 》，一本用於教導Greasemonkey腳本撰寫的免費書籍，由Mark Pilgrim著作-  舊Greasemonkey腳本儲藏庫包括很多使用者為其個人需要撰寫，上傳併分享給大眾的腳本。- //userscripts.org/ userscripts.org（ Greasemonkeyed.com為其前身）- 取代dunck.us的腳本倉庫。-  Greasefirefix-attempted=yes 必需配合「Greasmonkey」才能運作，因此安裝「Greasefire」前得先安裝「Greasmonkey」才行。安裝完「Greasefire」後，只要所瀏覽的網頁在「Userscripts.org」有可用的GM Script，「Greasmonkey」的猴子狀態列圖示便會亮起來。-  Greasemonkey禮節date=2005-04-12 -  Greasemonkey與其在商業模型的效果-  腳本編譯器 date=20210107141227 用來轉換Greasemonkey腳本成Mozilla附加元件。-  Greasemonkey編譯器轉換Greasemonkey使用者腳本成完整的converts Greasemonkey Mozilla附加元件。-  給非技術人員的Greasemonkey解釋date=20070114062606 -  browserscripts.org腳本社群。-  Greasemonkey在企業 date=20080705061348  - 網誌系列，主題關注當使用Greasemonkey於IT專案時保全與發佈問題。-  InternetDuctTape.com date=20201109025754  - 安裝與使用Greasemonkey使用者腳本新手指南。

**評論**
  accessdate=2007年10月24日 -  dead-url=no