ระยะและองค์ประกอบของกระบวนการ Crawling

ระยะและองค์ประกอบของกระบวนการ Crawling
David Kaufmann
บทเรียน SEO
4 min read

Crawling, spider, bot คือคำที่ SEO ทุกคนคุ้นเคยในแต่ละวัน และมีน้ำหนักสำคัญต่อกลยุทธ์การจัดอันดับใดๆ เพราะหากระยะนี้ล้มเหลว ส่วนที่เหลือก็จะล้มเหลวด้วย

มาดูรายละเอียดของกระบวนการ web crawlingกัน

การ crawl เว็บไซต์หมายความว่าอะไร

ก่อนเดินหน้าต่อ มานิยามกระบวนการ crawl เว็บไซต์กัน เพื่อแสดงความสำคัญที่มีในความพยายามใดๆในการปรากฏในผลการค้นหาของ Google

การ crawl เว็บไซต์ถูกเข้าใจว่าเป็นกระบวนการที่ spider หรือ crawler เดินทางผ่านหน้าต่างๆของเว็บไซต์ เก็บรวบรวมข้อมูลที่เข้าถึงได้ทั้งหมด เพื่อจัดเก็บ ประมวลผล และจำแนกในภายหลัง

ควรเน้นคำพื้นฐานบางคำในนิยามที่เพิ่งวางไว้

  • การเดินทาง: คิดถึง spider จริงๆ แมลงที่เป็นมิตรนี้ต้องผ่านหน้าให้มากที่สุดเท่าที่จะทำได้เพื่อดึงข้อมูลให้มากที่สุด ในการไปจากหน้าหนึ่งไปอีกหน้า มันทำผ่าน internal linkที่เชื่อมต่อหน้าเหล่านั้น ดังนั้นจึงสำคัญที่จะมี internal linking ที่ถูกต้อง ที่อนุญาตให้ spider เหล่านี้ "ค้นพบ" หากไม่ใช่ทั้งหมด อย่างน้อยก็หน้าที่เกี่ยวข้องที่สุดสำหรับเรา

  • การเข้าถึงได้: ข้อมูลต้องเข้าถึงได้สำหรับ spider เหล่านี้ นั่นคือ หากเราจำกัดการเข้าถึงโดยตั้งใจหรือผิดพลาด เราจะป้องกัน spider จากการประมวลผลเนื้อหาทั้งหมด ดังนั้นจึงไม่เข้าใจและจำแนกในที่สุด

การบล็อกหรือจำกัดเนื้อหาหน้านี้สามารถเกิดได้หลายวิธี ซึ่งเราจะอธิบายเพิ่มเติมในโพสต์นี้

Crawler

เราพูดถึง spider หรือที่เรียกว่า crawler หรือ bot เราสามารถนิยามว่าเป็นโปรแกรมที่วิเคราะห์เอกสารบนเว็บไซต์ของเรา นั่นคือ เป็นเหมือน "บรรณารักษ์" ที่ค้นหา จำแนก และจัดระเบียบ หน้าที่หลักจึงคือสร้างฐานข้อมูล มีหลายประเภทตามชนิดของข้อมูลที่รวบรวม มาพูดถึงประเภทที่พบบ่อยที่สุด

Googlebot: Spider ที่ทำหน้าที่ crawl เนื้อหาของเราและจำแนกในผลลัพธ์ organic (SERP) สำหรับ SEO เป็นตัวที่สำคัญที่สุด

ในประเภทนี้เราสามารถแยกประเภทย่อยบางส่วน

  • Googlebot (smartphones): เวอร์ชัน mobile

  • Googlebot (desktop version): เวอร์ชัน desktop

  • Googlebot Images: ทำหน้าที่ crawl รูปภาพ

  • Googlebot News: สำหรับข่าว

  • Googlebot Video: ตอนนี้ถึงตาวิดีโอ

ตัวอย่าง bot ที่ระบุใน log ของเรา

Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/W.X.Y.Z‡ Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)

ไม่ใช่ตัวเดียว มีตัวอื่นเช่น Adsbot, Adsense ฯลฯ เมื่อกล่าวถึงตัวที่เกี่ยวข้องกับวงการ SEO แล้ว การแยกแยะจากตัวอื่นไม่ใช่จุดเน้นของบทความนี้ แต่คุณสามารถหาข้อมูลเพิ่มเติมที่**ลิงก์อย่างเป็นทางการของ Google นี้**

ระยะของกระบวนการ crawl และ index ของ Google

ตอนนี้ที่เรารู้แล้วว่าการ crawl คืออะไรใครทำหน้าที่นั้น และเราได้พูดถึงกระบวนการแล้ว มาดูรายละเอียดที่เฉพาะเจาะจงกัน

ระยะแรก: การ crawl และจำแนก

กระบวนการที่หน้าของเราปรากฏในผลลัพธ์ของ Google ผ่านระยะแรกของการ crawlดังที่เราเห็น ดำเนินการโดย spider (crawler) เพื่ออ่าน ตีความ index และจำแนกเนื้อหาของเรา

นี่คือคำใหม่ที่เราต้องการวิเคราะห์รายละเอียด จำแนก Google ต้องเข้าใจเนื้อหาของเราอย่างสมบูรณ์ ง่ายและเร็ว เพราะเราจะเห็นในภายหลังว่า Google ใช้เวลาเฉพาะกับเว็บไซต์ของเราและในเวลานั้นต้อง "เข้าใจ" เนื้อหาของเราและเชื่อมโยงกับเจตนาในการค้นหาของผู้ใช้

ดังนั้นใน SEO สมัยใหม่จึงได้ยินคำว่า "Search Intent" บ่อยครั้ง เนื่องจาก Google จะนำมาพิจารณาในการจำแนกและจะกำหนดตำแหน่งที่หน้าของเราอยู่ในการจัดอันดับ SERP

ดังนั้นกระบวนการ crawl ต้องสะอาด เรียบง่าย เร็ว ไม่มีอุปสรรค ฯลฯ เพื่อให้ทุกอย่างชัดเจนและจำแนกอย่างถูกต้อง

ระยะที่สอง: การ index

เราไม่สามารถลืมระยะการ index ที่นำหน้าการจำแนกและมีบทบาทพื้นฐานเช่นกัน เนื่องจากจะเป็นขั้นตอนที่ Google เพิ่มเนื้อหาของเราในฐานข้อมูล นั่นคือ index

crawling web
crawling web

การบล็อก robot ของ Google

เราพูดถึงก่อนหน้านี้ว่ามีวิธีที่เราอาจจำกัดการเข้าถึงเนื้อหาของ spider เหล่านี้ สำหรับสิ่งนี้ มีองค์ประกอบที่มีน้ำหนักสำคัญใน SEO ที่รู้จักกันในชื่อ robots.txt

ไฟล์ robots.txt เป็นไฟล์ข้อความที่เราอัปโหลดไปที่เซิร์ฟเวอร์ ซึ่งเราให้คำสั่งที่แม่นยำกับ spider ต่างๆเพื่ออนุญาตหรือบล็อกการ crawl URL ของเว็บไซต์ การบล็อกนี้สามารถใช้กับ

  • ทั้ง domain

  • path เฉพาะ

  • URL เฉพาะ

  • หรือชุด URL ที่ตรงกับรูปแบบเฉพาะ

มาดูตัวอย่างการตั้งค่าของไฟล์นี้

User-agent: *

Disallow: /wp-admin/

Allow: wp-admin/admin-ajax.php

Sitemap: /sitemap.xml

ดังที่เห็น มีบรรทัดแรกที่เราระบุ user-agent (ชื่อของ crawler ที่เราต้องการบล็อกหรืออนุญาต จากที่เราเห็นก่อนหน้านี้) ตามด้วยคำสั่ง "disallow" เพื่อห้ามเข้า หรือ "allow" เพื่ออนุญาต

ในกรณีเฉพาะที่เราเห็น โดยระบุด้วย * เรากำลังบอกว่า "crawler ทั้งหมด" โดยไม่ยกเว้น เรากำลังห้าม crawler เข้า /wp-admin/ แต่ภายใน path นั้นเราต้องการอนุญาตให้เข้า /admin-ajax.php

การตั้งค่าผิดของไฟล์นี้อาจทำให้เราบล็อกส่วนสำคัญของเนื้อหา เป็นข้อผิดพลาดทั่วไปที่บล็อกเว็บไซต์ทั้งหมดขณะกำลังพัฒนา แล้วลืมเอาบล็อกออกหลังจากนำไป production ทำให้ Google เข้าไม่ถึง

ปัญหาอีกอย่างที่ spider ของ Google อาจพบเมื่อ crawlเนื้อหาของเรา คือไม่สามารถติดตาม internal linkที่เรามีบนเว็บไซต์ ดังนั้นจึงไม่เข้าถึง URL อื่น เกิดขึ้นเมื่อเราใช้องค์ประกอบ JavaScriptแทน "href" ในลิงก์เหล่านั้น แนวทางนี้ทั่วไปมาก เนื่องจากการใช้ JS มีข้อดีหลายอย่างที่ระดับผู้ใช้ แต่หากใช้ไม่ถูกต้องและเพิ่มใน internal link Google อาจไม่สามารถติดตามได้

ในโลก SEO รู้จักกันในชื่อ "link obfuscation" ณ วันนี้ เป็นการอภิปรายเปิดว่า Google สามารถ crawl และ render หน้าที่ทำใน JS ได้ถูกต้องหรือไม่

รหัสตอบสนองของเซิร์ฟเวอร์

เพื่อทำความเข้าใจกระบวนการนี้ให้ดี เราไม่สามารถมองข้ามแนวคิดที่ SEO ต้องจัดการทุกวัน คือรหัสตอบสนองของเซิร์ฟเวอร์

ก่อนหน้านี้ เราเห็นวงจรที่ Googleพบเรา แต่สิ่งนี้เกิดขึ้นได้อย่างไร ผู้ใช้ค้นหา (query) ใน Google เครื่องมือค้นหาไปที่ฐานข้อมูลและแสดงผลลัพธ์ที่เกี่ยวข้องที่สุด (SERP) ตามการจำแนก สำหรับการค้นหานั้น

เมื่อผู้ใช้เห็นผลลัพธ์ต่างๆ (impression) คลิกที่หนึ่งในนั้น ที่ในการตัดสินของพวกเขาเหมาะที่สุดกับสิ่งที่ต้องการ ในเวลานั้นคำขอของ Google ไปยังเซิร์ฟเวอร์ที่เว็บไซต์โฮสต์อยู่จะเข้ามามีบทบาท เพื่อ "ส่ง" เนื้อหา

เมื่อเกิดขึ้น การตอบสนองของเซิร์ฟเวอร์เกิดขึ้นผ่านรหัสที่สอดคล้อง มาตั้งชื่อสิ่งที่เกี่ยวข้องที่สุดที่ในฐานะ SEO เราต้องนำมาพิจารณา

  • 200: รหัสตอบสนองนี้เป็นรหัสที่บอก Google ว่าหน้ามีอยู่ มีเนื้อหา และไม่มีปัญหาในการแสดง เป็นรหัสที่ SEO ปรารถนามากที่สุด ตราบใดที่เนื้อหาของหน้าที่มีรหัส 200 เหมาะสมที่สุด

  • 30x: ครอบครัวของรหัสสถานะ 30x สอดคล้องกับ redirect ที่โดดเด่นที่สุดคือ 301 (permanent), 302 และ 307 (temporary) โดยพื้นฐานบอก Google ว่า "เฮ้ URL A ที่คุณขอ ไม่ใช่อันนี้แล้ว เป็น URL B อันอื่น" มีอีก แต่ไม่ใช่จุดเน้นของแนวคิดที่เราพัฒนา สำคัญที่จะรู้ว่าในฐานะ SEO ตัวที่นิยมคือ 301 ซึ่งโอนความน่าเชื่อถือทั้งหมด

อ่านที่แนะนำ: คู่มือ redirect 301

  • 40X: รหัสข้อผิดพลาด ที่ SEO ต้องการน้อยที่สุด ที่พบบ่อยที่สุดคือ 404 ที่โด่งดัง เมื่อรหัสนี้ปรากฏ เรากำลังบอก Google ในการตอบสนองคำขอ URL ว่าไม่มีอยู่อีกต่อไปและจึงเป็นข้อผิดพลาด

  • 410: เราต้องการแยกตัวนี้ออกจากครอบครัว 40x สำหรับคุณค่า SEO เมื่อเราใช้รหัสนี้ ในการตอบสนองต่อคำขอจากเซิร์ฟเวอร์ของ Google สำหรับ URL เรากำลังบอกว่า "หายไปอย่างถาวร" น่าสนใจเพราะต่างจาก 404 ที่ Google เข้าใจว่าจะไม่อยู่ที่นั่นอีกและจะหยุดพยายาม crawl ในขณะที่ 404 จะ crawl อีกครั้งคิดว่าเราอาจต้องการแก้ไข

  • 50x: การตอบสนองประเภทนี้เชื่อมโยงกับข้อผิดพลาดของเซิร์ฟเวอร์ เมื่อเครื่องของเราล้มเหลวด้วยเหตุผลบางอย่าง และ Google พยายามขอเนื้อหาของ URL บางตัวจากเรา หากเซิร์ฟเวอร์ล้มเหลว จะคืนรหัสสถานะ 505

Crawl Budget

ณ จุดนี้ในโพสต์ เรายังต้องพูดถึงคำที่กลายเป็นที่นิยมเมื่อสองสามปีก่อนในโลก SEO ที่รู้จักในชื่อ crawl budget

Crawl budget หมายถึงเวลาที่ spider ของ Google ใช้ในการ crawl เว็บไซต์และ URL ทั้งหมด เป็นเวลาที่จำกัดดังที่เรากล่าวก่อนหน้านี้ ดังนั้นจึงสำคัญที่จะมีเว็บไซต์ที่ได้รับการเพิ่มประสิทธิภาพ เพื่อทำให้ง่ายขึ้นที่จะเห็นหน้าที่เกี่ยวข้องที่สุดของเว็บไซต์ในเวลานั้น

เวลานี้ที่ crawler ใช้ในการผ่านเว็บไซต์ไม่ใช่ค่าคงที่ จะเพิ่มขึ้นหรือลดลงขึ้นอยู่กับด้านต่างๆเช่น ความถี่ที่เราอัปเดตเนื้อหา ความน่าเชื่อถือของ domain (ความนิยม) ฯลฯ

ยิ่งคุณภาพของเว็บไซต์สูง ความน่าเชื่อถือมาก และเนื้อหาสดมาก Google จะถือว่าเราเกี่ยวข้องมากขึ้นและจะจัดสรร budget สำหรับ crawl เรามากขึ้น

ด้วยโปรแกรม crawl เช่น Screaming Frog เราทำการ crawl จำลองที่เหมาะสมของเว็บไซต์ นั่นคือ ราวกับว่า spider มีเวลาทั้งโลกในการผ่านทุก URL

แต่ไม่ใช่อย่างนั้นเมื่อพูดถึง Googlebot ค่อนข้างจะเป็นว่าทุกครั้งที่ Google เข้าเว็บไซต์ จะเข้าบาง URL มากกว่าตัวอื่น ในความเป็นจริง อาจมีบางตัวที่ไม่เข้าเลย เราจะวิเคราะห์สิ่งนี้ด้วยสิ่งที่รู้จักในชื่อ server log (บันทึก URL ที่ Google ได้ crawl ความถี่ที่ทำ และจำนวนครั้งในช่วงเวลาที่กำหนด)

ทั้งหมดถึงนี้ การวิเคราะห์ทั้งหมดเกี่ยวกับการเข้าใจการ crawl คืออะไรและองค์ประกอบต่างๆที่เป็นส่วนหนึ่งของระบบการ crawl ของ Google

มีคำถามหรือข้อเสนอแนะหรือไม่ เช่นเคย... เราอยากได้ยินจากคุณ

โดย: David Kaufmann

David Kaufmann

ในช่วง 10+ ปีที่ผ่านมา ผมหมกมุ่นกับ SEO อย่างสมบูรณ์ — และพูดตรง ๆ ก็ไม่อยากให้เป็นแบบอื่น

อาชีพของผมก้าวขึ้นไปอีกระดับเมื่อทำงานเป็นผู้เชี่ยวชาญ SEO อาวุโสที่ Chess.com — หนึ่งใน 100 เว็บไซต์ที่มีผู้เข้าชมมากที่สุดในอินเทอร์เน็ต การทำงานในระดับนี้สอนสิ่งที่ไม่มีหลักสูตรหรือประกาศนียบัตรใดสอนได้

จากประสบการณ์นี้ ผมก่อตั้ง SEO Alive — เอเจนซีสำหรับแบรนด์ที่จริงจังกับการเติบโตแบบออร์แกนิก และเพราะหาเครื่องมือที่จัดการทั้งโลกคลาสสิกและยุค AI ได้ดีไม่ได้ ผมจึงสร้าง SEOcrawl ขึ้น หากคุณกำลังมองหาพาร์ตเนอร์ SEO มากประสบการณ์ที่รักสาขานี้ — ยินดีพูดคุยครับ!

→ อ่านบทความทั้งหมดของ David
บทความเพิ่มเติม: David Kaufmann

ค้นพบเนื้อหาเพิ่มเติมของผู้เขียนคนนี้