กลับไปหน้าบทความ

อ่าน 5 นาที

กรีสมังกี้

Greasemonkey คือ โปรแกรมจัดการสคริปต์สำหรับผู้ใช้ ซึ่งมีให้ใช้งานในรูปแบบ ส่วนเสริม ของ Mozilla Firefox ช่วยให้ผู้ใช้สามารถติดตั้ง สคริปต์ ที่ทำการเปลี่ยนแปลงเนื้อหาของ เว็บเพจ...

กรีสมังกี้

กรีสมังกี้
ผู้เขียนต้นฉบับแอรอน บูดแมน
นักพัฒนาAnthony Lieuallen, Johan Sundström, [ 1 ]อีก 13 คน[ 2 ]
ปล่อย6 ธันวาคม พ.ศ. 2547 [ 3 ] [ 4 ] ( 6 ธันวาคม 2547 )
เวอร์ชันเสถียร
4.13 / 5 สิงหาคม 2567 ( 5 สิงหาคม 2024 )
เขียนเป็นJavaScript , XUL , CSS
ระบบปฏิบัติการข้ามแพลตฟอร์ม
มีจำหน่ายในภาษาอังกฤษ
พิมพ์ส่วนขยาย Mozilla
ใบอนุญาตใบอนุญาต MIT
เว็บไซต์www.greasespot.net
ที่เก็บข้อมูล
  • github.com/greasemonkey/greasemonkey

Greasemonkeyคือโปรแกรมจัดการสคริปต์สำหรับผู้ใช้ซึ่งมีให้ใช้งานในรูปแบบส่วนเสริมของ Mozilla Firefox ช่วยให้ผู้ใช้สามารถติดตั้งสคริปต์ ที่ทำการเปลี่ยนแปลงเนื้อหาของ เว็บเพจแบบเรียลไทม์ได้ทั้งก่อนหรือหลังการโหลดหน้าเว็บในเบราว์เซอร์ (หรือที่เรียกว่าการท่องเว็บแบบเสริมประสิทธิภาพ )

การเปลี่ยนแปลงที่เกิดขึ้นกับหน้าเว็บจะถูกดำเนินการทุกครั้งที่มีการดูหน้าเว็บนั้น ทำให้การเปลี่ยนแปลงนั้นคงอยู่ถาวรสำหรับผู้ใช้ที่เรียกใช้สคริปต์

Greasemonkey สามารถใช้ในการปรับแต่งรูปลักษณ์ของหน้าเว็บ เพิ่มฟังก์ชันใหม่ให้กับหน้าเว็บ (เช่น การฝังการเปรียบเทียบราคาภายในเว็บไซต์ช้อปปิ้ง) แก้ไขข้อผิดพลาดในการแสดงผล การรวมข้อมูลจากหลายหน้าเว็บ และวัตถุประสงค์อื่นๆ อีกมากมาย

ประวัติศาสตร์

โครงการ Greasemonkey เริ่มต้นเมื่อวันที่ 28 พฤศจิกายน 2004 เขียนโดย Aaron Boodman [ 5 ] [ 6 ] [ 7 ] Boodman ได้รับแรงบันดาลใจในการเขียน Greasemonkey หลังจากดูส่วนขยาย Firefox ที่ออกแบบมาเพื่อทำความสะอาดอินเทอร์เฟซของAllMusic [ 8 ]ซึ่งเขียนโดยAdrian Holovatyผู้ซึ่งต่อมาได้กลายเป็นนักพัฒนา userscript ภายในเดือนพฤษภาคม 2005 มี userscript ทั่วไปประมาณ 60 รายการและ userscript เฉพาะไซต์ประมาณ 115 รายการที่เผยแพร่สำหรับ Greasemonkey [ 8 ] ในเดือนกรกฎาคม 2005 Mark Pilgrim พบช่องโหว่ร้ายแรงใน Greasemonkey [ 9 ] [ 10 ]และได้รับการแก้ไขในเวอร์ชัน 3.5 ของ Greasemonkey [ 11 ]ในช่วงเวลานี้ ยังมีการพัฒนาคอมไพเลอร์ Greasemonkey สำหรับแปลง userscript เป็นส่วนขยาย Firefox แบบสแตนด์อโลน[ 12 ]ในช่วงแรก Greasemonkey ได้รับข้อร้องเรียนจากผู้เผยแพร่เนื่องจากความสามารถในการบล็อกโฆษณา[ 13 ]อย่างไรก็ตาม การวิจารณ์นี้เปลี่ยนจุดสนใจไปที่ส่วนเสริมอื่นๆ โดยเริ่มจากการเปิดตัวAdblock Plus ในปี 2549

Userscripts.org

เพื่อรองรับจำนวนสคริปต์ที่เพิ่มขึ้น บริทท์ เซลวิตเทลและสมาชิกคนอื่นๆ ของชุมชน Greasemonkey จึงได้ก่อตั้ง userscripts.org ขึ้นในช่วงปลายปี 2548 userscripts.org เปิดให้ใช้งานแบบโอเพนซอร์สในปี 2550 แต่ต่อมาเว็บไซต์ก็ย้ายออกจากฐานโค้ดนี้[ 14 ]ในฐานะคลังสคริปต์หลักที่ระบุไว้ในเว็บไซต์อย่างเป็นทางการของ Greasemonkey userscripts.org ได้รวบรวมสคริปต์หลายพันรายการต่อปี

ในปี 2010 เจสซี แอนดรูว์ส ผู้ดูแลระบบคนสุดท้ายที่ทราบ ได้โพสต์ว่าเว็บไซต์อยู่ในโหมดบำรุงรักษาเนื่องจากไม่มีเวลา และขอให้ผู้ดูแลระบบคนใหม่สมัครใจ[ 15 ]อย่างไรก็ตาม เขายังคงเป็นผู้ดูแลระบบเพียงคนเดียวของเว็บไซต์จนกระทั่งมีการพูดคุยเกี่ยวกับจำนวนการติดตั้งในวันที่ 1 เมษายน 2013 [ 16 ]ก่อนหน้านี้ สคริปต์ยอดนิยมหลายรายการตามที่ระบุไว้ในเว็บไซต์มีจำนวนการติดตั้งเป็นศูนย์ ในปีต่อมา สคริปต์สแปมเริ่มแพร่หลายมากขึ้น เวลาหยุดทำงานของเซิร์ฟเวอร์เพิ่มขึ้น และข้อผิดพลาดเกี่ยวกับจำนวนการติดตั้งยังคงอยู่[ 17 ]เมื่อไม่มีการติดต่อเพิ่มเติมจากแอนดรูว์ส ผู้เขียนสคริปต์ผู้ใช้จึงอธิบายว่าเว็บไซต์ถูกละเลย และเว็บไซต์ Greasemonkey อย่างเป็นทางการได้ลบลิงก์หน้าแรกออก[ 18 ] [ 19 ]เพื่อเป็นการตอบสนอง ผู้เขียนสคริปต์และนักพัฒนาคนอื่นๆ จึงเริ่มทำงานบนfork "openuserjs.org" [ 20 ] [ 21 ]และต่อมา greasyfork.org [ 22 ]เพื่อทดแทนในทันที[ 23 ]

ในเดือนพฤษภาคม พ.ศ. 2557 userscripts.org ไม่สามารถเข้าถึงได้บนพอร์ต 80 ทำให้ผู้ใช้ต้องเข้าถึงผ่านพอร์ต 8080 แทน[ 17 ]ในเดือนสิงหาคม พ.ศ. 2557 เว็บไซต์ถูกปิดตัวลงอย่างสมบูรณ์ สคริปต์ส่วนใหญ่ได้รับการสำรองข้อมูลไปยังมิเรอร์แบบคงที่ userscripts-mirror.org ซึ่งปัจจุบันสามารถพบได้ที่นั่น[ 17 ]

รายละเอียดทางเทคนิค

สคริปต์ของผู้ใช้ Greasemonkey เขียนด้วยJavaScript และใช้ส่วนต่อประสาน Document Object Model ( DMO) ในการจัดการเนื้อหาของหน้าเว็บโดยทั่วไปแล้ว สคริปต์จะเขียนขึ้นเพื่อใช้งานเฉพาะหน้าเว็บหรือเฉพาะโดเมน (ใช้กับทุกหน้าภายในโดเมน) แต่ก็อาจมีการติดแท็กเพื่อใช้กับทุกโดเมนสำหรับการปรับปรุงประสิทธิภาพของเบราว์เซอร์ทั่วโลก ผู้ใช้ Greasemonkey สามารถเขียนหรือดาวน์โหลดสคริปต์และบันทึกไว้ในไลบรารีส่วนตัวของตนเองได้ เมื่อผู้ใช้เยี่ยมชมเว็บไซต์ที่ตรงกับสคริปต์ในไลบรารีสคริปต์ส่วนตัวของตน Greasemonkey จะเรียกใช้สคริปต์ที่เกี่ยวข้อง

สคริปต์ Greasemonkey สามารถแก้ไขหน้าเว็บได้ทุกวิธีที่ JavaScript อนุญาต โดยมีข้อจำกัดด้านความปลอดภัยบางประการของ Greasemonkey นอกจากนี้ สคริปต์ยังสามารถเข้าถึงหน้าเว็บและบริการเว็บ อื่นๆ ผ่าน คำขอ XMLHTTP ที่ไม่จำกัดโดเมน ทำให้สามารถผสานเนื้อหาภายนอกเข้ากับเนื้อหาหน้าเว็บเดิมได้

สคริปต์จะมีชื่อลงท้ายด้วยsomename.user.jsและ Greasemonkey จะเสนอให้ติดตั้งสคริปต์ดังกล่าวเมื่อมีการร้องขอ URL ที่ลงท้ายด้วยนามสกุลนั้น สคริปต์ของ Greasemonkey ประกอบด้วยเมตาเดตาที่ระบุชื่อของสคริปต์ คำอธิบาย ทรัพยากรที่สคริปต์ต้องการ URL เนมสเปซที่ใช้เพื่อแยกความแตกต่างระหว่างสคริปต์ที่มีชื่อเหมือนกัน และรูปแบบ URL ที่สคริปต์นั้นควรถูกเรียกใช้งานหรือไม่

การเขียนสคริปต์ Greasemonkey นั้นคล้ายกับการเขียน JavaScript สำหรับเว็บเพจ โดยมีข้ออนุญาตเพิ่มเติมบางอย่าง เช่นXMLHttpRequests ข้ามไซต์ เมื่อเทียบกับการเขียนส่วนขยาย Firefox แบบเต็มรูปแบบ การเขียนสคริปต์ของผู้ใช้นั้นมีความซับซ้อนเพิ่มขึ้นเพียงเล็กน้อยจากการเขียนโปรแกรมเว็บพื้นฐาน อย่างไรก็ตาม สคริปต์ Greasemonkey มีข้อจำกัดเนื่องจากข้อจำกัดด้านความปลอดภัยที่กำหนดโดย XPCNativeWrappers ของ Mozilla [ 24 ]ตัวอย่างเช่น สคริปต์ Greasemonkey ไม่สามารถเข้าถึงส่วนประกอบหลายอย่างของ Firefox เช่น ตัวจัดการการดาวน์โหลดกระบวนการ I/Oหรือแถบเครื่องมือหลัก นอกจากนี้ สคริปต์ Greasemonkey จะทำงานต่ออินสแตนซ์ของเว็บเพจที่ตรงกัน ด้วยเหตุนี้ การจัดการรายการต่างๆ ทั่วโลกจึงทำได้ยาก อย่างไรก็ตาม ผู้เขียนสคริปต์ได้ใช้คุกกี้ และ Greasemonkey ยังมี API เช่น GM_getValue และ GM_setValue เพื่อเอาชนะปัญหานี้

สคริปต์ผู้ใช้

เซิร์ฟเวอร์โฮสติ้งไฟล์สำหรับ Greasemonkey กำหนดให้URLของสคริปต์ต้องลงท้ายด้วย.user.jsและไม่ใช่ด้วยประเภท MIMEเช่นtext/htmlการสนับสนุนHTTPSจะตรงกับตัวตรวจสอบการอัปเดตในตัวของ Greasemonkey ณ เดือนกรกฎาคม 2019 โครงการ Greasemonkey ระบุโฮสติ้งสคริปต์ผู้ใช้ที่แนะนำสามรายการ: [ 25 ]

  • Gistคือ บริการวางไฟล์ แบบง่ายๆ ที่ดำเนินการโดย GitHub สามารถคัดลอกไฟล์ไปวางในแบบฟอร์มบนเว็บและบันทึกได้ โดยค่าเริ่มต้นจะใช้ HTTPSไฟล์อาจมีชื่อตามรูปแบบที่กำหนด โดยมีคำต่อท้าย ".user.js" สำหรับ URL ที่ใช้เป็นลิงก์ติดตั้ง
  • Greasy Fork เป็นเว็บไซต์ที่สร้างโดยผู้ดูแล userstyles.org [ 22 ]
  • OpenUserJS.org เป็นเว็บไซต์ที่เริ่มต้นจากการแยกสาขาจากคลังสคริปต์ userscripts.org ที่เลิกใช้งานแล้ว[ 20 ] [ 21 ]

ความเข้ากันได้

Greasemonkey สามารถใช้งานได้กับFirefox , FlockและGNOME Web (เดิมชื่อ Epiphany) ส่วนขยาย Greasemonkey สำหรับ Web เป็นส่วนหนึ่งของ แพ็คเกจ ส่วนขยาย Webอย่างไรก็ตาม ส่วนขยายนี้ไม่สามารถใช้งานร่วมกันได้อย่างสมบูรณ์ในเวอร์ชัน 2.15.1 เนื่องจาก ฟังก์ชัน API ของ Greasemonkey บางอย่าง (เช่นGM_getValue ) ไม่ได้รับการ สนับสนุนนอกจากนี้ยังมีเวอร์ชันที่กำหนดเองสำหรับSeaMonkey [ 26 ] [ 27 ] Songbird [ 28 ] Pale Moon [ 29 ] qutebrowser [ 30 ] และFalkon browser

ดูเพิ่มเติม

โลโก้ Wikimedia Commonsสื่อที่เกี่ยวข้องกับGreasemonkeyใน Wikimedia Commons

  • เว็บไซต์อย่างเป็นทางการ
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Greasemonkey&oldid=1357383869 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ กรีสมังกี้

Greasemonkey คือ โปรแกรมจัดการสคริปต์สำหรับผู้ใช้ ซึ่งมีให้ใช้งานในรูปแบบ ส่วนเสริม ของ Mozilla Firefox ช่วยให้ผู้ใช้สามารถติดตั้ง สคริปต์ ที่ทำการเปลี่ยนแปลงเนื้อหาของ เว็บเพจ...

ประวัติศาสตร์

โครงการ Greasemonkey เริ่มต้นเมื่อวันที่ 28 พฤศจิกายน 2004 เขียนโดย Aaron Boodman [ 5 ] [ 6 ] [ 7 ] Boodman ได้รับแรงบันดาลใจในการเขียน Greasemonkey หลังจากดูส่วนขยาย Firefox ที่ออกแบบมาเพื่อทำความสะอาดอินเทอร์เฟซของ AllMusic [ 8 ] ซึ่งเขียนโดย Adrian...

Userscripts.org

เพื่อรองรับจำนวนสคริปต์ที่เพิ่มขึ้น บริทท์ เซลวิตเทลและสมาชิกคนอื่นๆ ของชุมชน Greasemonkey จึงได้ก่อตั้ง userscripts.org ขึ้นในช่วงปลายปี 2548 userscripts.

รายละเอียดทางเทคนิค

สคริปต์ของผู้ใช้ Greasemonkey เขียนด้วย JavaScript และใช้ส่วนต่อประสาน Document Object Model ( DMO) ในการจัดการเนื้อหาของหน้าเว็บโดยทั่วไปแล้ว สคริปต์จะเขียนขึ้นเพื่อใช้งานเฉพาะหน้าเว็บหรือเฉพาะโดเมน (ใช้กับทุกหน้าภายในโดเมน)...