Sitemap URL Extractor: แปลงไฟล์ sitemap.xml ให้เป็นรายการ URL ที่กรองได้ในไม่กี่วินาที
เรียนรู้วิธี parse ไฟล์ sitemap.xml ทุกประเภท รวมถึง sitemap index ด้วยเครื่องมือ Sitemap URL Extractor ฟรี พร้อม export URL ทั้งหมดเป็น TXT หรือ CSV เพื่อใช้ audit, crawl และ migration
Table of Contents
เว็บไซต์ที่ดูแลรักษาอย่างดีทุกแห่งจะมี XML sitemap ประจำตัวอยู่เสมอ และไฟล์นี้ก็เป็นเอกสารที่ "ตรงไปตรงมา" ที่สุดฉบับหนึ่งของเว็บคุณ เพราะมันระบุชัดเจนว่า URL ใดบ้างที่คุณกำลังบอกให้ search engine เข้ามา crawl แต่ปัญหาคือไฟล์ sitemap.xml ไม่เคยอ่านสนุกเลย — เป็น XML ยาว ๆ ครึ่งหน้า ไม่มีการจัดรูปแบบ แถมเว็บใหญ่ ๆ ยังแยกเป็น child sitemap หลายสิบไฟล์ จนอยากได้แค่รายชื่อ URL ง่าย ๆ ก็ต้องนั่งเขียน script หรือก๊อปปี้ XML ไปแปะใน spreadsheet เอง
นี่คือจุดที่ Sitemap URL Extractor เข้ามาช่วย แค่ paste ไฟล์ sitemap ลงไป เครื่องมือจะ parse ให้ทันทีใน browser — ตรวจจับให้เองว่าคุณใส่มาเป็น urlset มาตรฐานหรือ sitemapindex พร้อม extract ค่า <loc> ของทุก URL ควบคู่กับ metadata อย่าง lastmod, changefreq และ priority ถ้ามี จากนั้นคุณสามารถ filter รายการแบบ real-time, copy URL ทั้งหมดเข้า clipboard หรือ download เป็นไฟล์ TXT / CSV ได้เลย
เพราะทุกอย่างทำงาน client-side 100% จึงไม่มีขั้นตอน upload ไม่มี server round-trip และไม่มีคิวรอ — ข้อมูลที่คุณ paste จะไม่ออกจากเครื่องไปไหนเลย ซึ่งสำคัญมากเมื่อทำงานกับ staging sitemap ก่อน launch หรือเว็บลูกค้าที่คุมด้วย NDA ไม่ว่าคุณต้องการ URL inventory สำหรับ content audit, crawl list สะอาด ๆ สำหรับ Screaming Frog หรือ checklist สำหรับ migration ตอน relaunch เว็บ เครื่องมือนี้พาคุณจาก XML ดิบไปสู่รายการที่ใช้งานได้จริงในไม่กี่วินาที
ทำไมต้องใช้ Sitemap URL Extractor?
- ไม่ต้อง setup ไม่ต้องเขียน script. ไม่ต้องมี Python ไม่ต้องรู้ XPath ไม่ต้องลง extension เพิ่ม — paste sitemap.xml แล้วได้ผลลัพธ์ทันที เพราะการ parse ทั้งหมดเกิดขึ้นในเครื่องคุณเอง
- รองรับ sitemap ทั้งสอง format. ทั้ง urlset มาตรฐานและ sitemapindex แบบหลายไฟล์ถูกตรวจจับอัตโนมัติ ทำให้ sitemap จาก WordPress, Shopify หรือ enterprise ทำงานได้หมด
- เก็บ metadata ไว้ครบ. ตัว extractor ดึง lastmod, changefreq และ priority ของทุก URL เมื่อมีข้อมูล ให้คุณมีสัญญาณไว้จัดลำดับความสำคัญตอน audit แทนที่จะได้แค่ลิสต์ link เปล่า ๆ
- Filter ก่อน export. ช่อง search แบบ real-time ให้ filter URL ด้วย substring — เลือกเฉพาะ /blog/, ตัดหน้า tag ออก, แยกหมวดสินค้า — ก่อน copy หรือ download
- Export ได้ตรงรูปแบบที่ต้องการ. ปุ่ม Copy All วาง URL บรรทัดละตัวลง clipboard ส่วน download มีทั้ง TXT ล้วน ๆ และ CSV ที่มี quoting ถูกต้อง เปิดใน Excel หรือ Google Sheets ได้สบาย
- ทนกับ XML ที่ไม่สมบูรณ์. whitespace ใน tag <loc> ถูก trim อัตโนมัติ และถ้าเอกสาร malformed เล็กน้อย parser จะ fallback ไปจับ <loc> แบบหลวม ๆ แทนที่จะพังทิ้งทั้งไฟล์
ฟีเจอร์เด่น
| ฟีเจอร์ | รายละเอียด |
|---|---|
| Parse แบบ client-side | Parse XML ใน browser ทันที — ไม่ upload, ไม่ผ่าน server, เป็นส่วนตัว 100% |
| ตรวจจับ format | ระบุว่าเป็น URL Set (urlset), Sitemap Index (sitemapindex) หรือ Mixed/Unknown |
| ดึง metadata ครบ | เก็บค่า <loc>, lastmod, changefreq และ priority ของทุกรายการ |
| ช่อง filter แบบ real-time | ค้นหาและ filter URL ด้วย substring ได้ทันทีขณะพิมพ์ |
| ตัวนับจำนวน | แสดงจำนวน URL ทั้งหมดคู่กับจำนวนที่แสดงหลัง filter |
| Copy All URLs | คลิกเดียว copy รายการที่เห็นเข้า clipboard บรรทัดละ URL |
| Download TXT | รายการ URL แบบ plain text พร้อมใช้กับ crawler, script หรือ checklist |
| Download CSV | Export แบบมีโครงสร้างคอลัมน์ url,lastmod,changefreq,priority พร้อม quoting ที่ถูกต้อง |
| รองรับ input เพี้ยน | Trim whitespace ใน tag และ fallback ไป loose <loc> matching เมื่อ XML พัง |
มีจุดเล็ก ๆ ที่น่าเรียกว่า "ทำงานได้จริง":
- การตรวจจับ format มีประโยชน์จริง. sitemap จาก CMS บางตัวฝังโครงสร้างแปลก ๆ เอาไว้ การรู้ว่าไฟล์ที่ paste ไปถูกจัดเป็น URL Set, Index หรือ Unknown บอกคุณทันทีว่าก๊อปมาถูกไฟล์หรือเปล่า
- CSV export มี quoting ที่ถูกต้อง. ค่าที่มี comma หรือ newline ถูก escape ให้เรียบร้อย ทำให้เปิดใน Excel หรือ Sheets แล้วไม่มีคอลัมน์พัง
- การนับ shown/total ช่วยตอนทำ audit. พิมพ์ filter ว่า /blog/ แล้วเห็นเลยว่ามี blog URL กี่หน้าจากทั้งเว็บ — เร็วกว่านับมือหรือ export แล้วเปิด Excel นับเอง
วิธีใช้งาน
- เปิดไฟล์ sitemap.xml ของเว็บที่ต้องการ (เช่น https://example.com/sitemap.xml) แล้ว view source หรือ copy เนื้อหาทั้งหมด — จะเป็น urlset หรือ sitemapindex ก็ได้
- นำ XML ที่ copy มา paste ลงในช่อง input ของ Sitemap URL Extractor
- กดปุ่ม Extract — เครื่องมือจะ parse ทันที แสดงประเภทของ sitemap พร้อมจำนวน URL ทั้งหมดที่พบ
- ใช้ช่อง filter จำกัดรายการตามที่ต้องการ เช่น พิมพ์ /blog/ เพื่อดูเฉพาะบทความ หรือพิมพ์ชื่อหมวดสินค้าเพื่อแยกกลุ่มหน้า
- Export ผลลัพธ์ — กด Copy เพื่อเอา URL ทั้งหมดเข้า clipboard, download เป็น TXT สำหรับรายการล้วน หรือ CSV เมื่อต้องการคอลัมน์ lastmod, changefreq, priority ครบ
เข้าใจ Sitemap: urlset vs Sitemap Index
sitemap.xml มาตรฐานมีสองรูปแบบหลัก และการแยกแยะให้ออกจะช่วยให้ใช้เครื่องมือได้แม่นยำขึ้น
urlset (URL Set) คือรูปแบบพื้นฐาน — ไฟล์ XML ที่มี element <url> หนึ่งอันต่อหน้าเว็บ แต่ละอันจะมี <loc> (URL เต็ม) เป็นข้อมูลบังคับ ส่วน <lastmod>, <changefreq> และ <priority> เป็นตัวเลือก เว็บเล็กถึงกลางมักใช้แบบนี้ทั้งไฟล์เดียว
sitemapindex (Sitemap Index) คือไฟล์สารบัญที่ชี้ไปยัง sitemap ลูกหลายไฟล์ แทนที่จะ list URL ตรง ๆ แต่ละ entry จะเป็น element <sitemap> ที่บรรจุ <loc> ชี้ไปที่ child sitemap เช่น sitemap-posts.xml, sitemap-products.xml เว็บใหญ่อย่าง e-commerce หรือ media site ใช้แนวนี้เกือบทั้งหมด
ทำไมต้องแยกหลายไฟล์? เพราะ protocol ของ sitemap กำหนด limit ต่อไฟล์ไว้ที่ 50,000 URL หรือ 50MB (ย่อยไม่บีบอัด) — เกินกว่านั้นต้องแตกเป็น child sitemap แล้วรวมด้วย sitemap index นั่นเอง ส่วน metadata ที่เครื่องมือดึงมาให้มีความหมายดังนี้:
- lastmod — วันที่หน้านั้นแก้ไขล่าสุด ใช้เทียบว่าหน้าไหนเก่าที่ควร refresh
- changefreq — ความถี่ที่คาดว่าหน้าจะเปลี่ยน (daily, weekly, monthly) เป็น hint ไม่ใช่คำสั่ง
- priority — ค่า 0.0–1.0 ที่บอกว่าหน้าไหนสำคัญกว่ากันเทียบกับหน้าอื่น ในเว็บเดียวกัน (Google ประกาศแล้วว่าไม่สนค่านี้ แต่หลาย CMS ยัง generate ออกมา และยังใช้ประโยชน์เป็น signal ภายในได้)
สำหรับสาย SEO การ audit รายการ URL พวกนี้คือกิจวัตร: redirect ผิด, canonical ชี้เพี้ยน, หน้า noindex ที่ควรออกจาก sitemap, หรือ duplicate ที่ CMS สร้างซ้ำ — ทั้งหมดนี้มองเห็นได้ก็ต่อเมื่อคุณมีรายการ URL แบบ plain list ที่เปิดเทียบกับ crawl data ได้ก่อน
use case ในทางปฏิบัติ
1. Content audit และการหา orphan page
สมมติทีม content อยากรู้ว่ามีบทความใน blog กี่ชิ้นจริง ๆ และหน้าไหนไม่เคยถูกอัปเดตมานาน แค่ extract sitemap ของ /blog/ ออกมาเป็น CSV แล้ว sort ตามคอลัมน์ lastmod ก็จะเห็นทันทีว่าบทความไหน "แก่" กว่า 18 เดือนและควร refresh หรือ retire ส่วนการหา orphan page ทำได้โดยเทียบ URL list จาก sitemap กับ crawl data — หน้าที่ crawler เจอแต่ไม่อยู่ใน sitemap (หรือกลับกัน) คือจุดที่ internal linking มีปัญหา
2. เตรียม crawl list สำหรับ Screaming Frog หรือ Sitebulb
เวลา audit เว็บที่มีหน้าเป็นแสน การให้ crawler ไล่ทั้ง domain ตั้งแต่ต้นจะช้าและเปลือง resource วิธีที่เร็วกว่าคือ extract URL จาก sitemap มาก่อน, filter เฉพาะกลุ่มที่สนใจ (เช่น เฉพาะ /products/) แล้วเอา list นั้นไปใส่ใน mode "list crawl" ของ Screaming Frog — ได้ผลเฉพาะหน้าที่ต้อง audit เท่านั้น ประหยัดเวลาได้มหาศาล
3. Migration QA ก่อนและหลัง relaunch
ตอนย้ายเว็บหรือ rebuild ใหม่ ให้ extract URL list จาก sitemap เก่าเก็บไว้เป็น "baseline" ก่อน launch จากนั้นหลัง relaunch ก็ extract อีกครั้งแล้ว diff สอง list กัน — URL ไหนหายไปต้องมี redirect รองรับ, URL ใหม่ที่โผล่มาต้องอยู่ในแผน และจำนวนหน้ารวมควรใกล้เคียงกัน ถ้าตัวเลขต่างกันมากแปลว่ามีบางอย่างผิดพลาดระหว่าง migration
4. เก็บ inventory URL ของคู่แข่ง
sitemap สาธารณะของเว็บอื่นก็ extract ได้เช่นกัน เพราะเป็นไฟล์ public อยู่แล้ว ทีม marketing ใช้วิธีนี้ดูว่าคู่แข่งเพิ่มหน้า product หรือบทความหมวดไหนล่าสุด (เทียบจาก lastmod) หรือประเมินขนาด content ของเขาโดยคร่าว ๆ ก่อนวางแผนแข่ง — เร็วกว่าไล่เว็บเอาเองหลายเท่า
Best Practices
- ตรวจว่า paste ถูกไฟล์. ถ้าเครื่องมือรายงานว่าเจอ 0 URL หรือ type เป็น Unknown ให้กลับไปดูว่าก๊อปมาเป็น sitemap index ซึ่งต้องเปิด child sitemap ต่อ หรือก๊อปมาไม่ครบทั้งไฟล์
- Extract ทีละ child sitemap. กับ sitemap index ขนาดใหญ่ การ parse ทีละไฟล์ลูกแล้ว merge CSV ทีหลัง จะคุมงานได้ง่ายกว่าพยายามรวมทุกอย่างในครั้งเดียว
- เก็บ snapshot ประจำ. ถ้า audit เป็นงานประจำ ให้เซฟ CSV รายเดือนไว้ใน folder เดียวกัน จะได้ diff ย้อนหลังและเห็น trend ของจำนวนหน้า
- อย่าเชื่อ priority และ changefreq 100%. ค่าพวกนี้ CMS generate มาอัตโนมัติส่วนใหญ่ Google ไม่ใช้ตัวเลขพวกนี้ตัดสิน ranking — ใช้เป็น hint ภายในอย่างเดียวพอ
- เทียบกับ robots.txt เสมอ. ก่อนสรุปว่า "เว็บมีหน้าเท่านี้" ให้เช็คด้วยว่า child sitemap บางไฟล์ถูก disallow ใน robots.txt หรือไม่ ซึ่งทำได้ร่วมกับ สร้าง Robots.txt
- ทำให้เป็นขั้นตอนมาตรฐานก่อน migration. URL list จาก sitemap คือ artifact แรกที่ควรเก็บก่อนทุก migration — ไม่มี baseline ก็ไม่มีวันพิสูจน์ว่าอะไรหายไป
ลองใช้ Sitemap URL Extractor วันนี้
ไม่ว่าคุณกำลังเตรียม content audit ครั้งใหญ่ ตรวจสอบเว็บหลัง migration หรือแค่อยากรู้ว่าเว็บตัวเองมีกี่หน้าจริง ๆ ทุกอย่างเริ่มจากการมีรายการ URL ที่สะอาดในมือ — และตอนนี้คุณได้มันฟรี ๆ ในไม่กี่คลิก
เปิด Sitemap URL Extractor, paste sitemap.xml ของคุณลงไป แล้วดูรายการ URL ทั้งหมดโผล่ขึ้นมาพร้อม metadata ครบถ้วน จากนั้นเลือกเองว่าจะ copy, TXT หรือ CSV — ไม่มีสมัครสมาชิก ไม่มีคิวรอ และข้อมูลไม่ออกจากเครื่องคุณเลย
เครื่องมือที่เกี่ยวข้อง
- สร้าง Robots.txt — จับคู่กับ sitemap เพื่อคุมการ crawl ของ bot ให้สอดคล้องกัน
- Meta Tags Generator — ประกอบ meta tags มาตรฐานให้หน้าที่คุณเพิ่งเข้าไปใน sitemap
- SSL Certificate Checker — เช็คว่า certificate ของทุก domain ในรายการยัง valid ก่อนให้ search engine เข้ามา
ขอให้สนุกกับการ extract!