Stan Kukučka
Posted on April 13, 2024
การวิเคราะห์ SEO ให้อันดับข้อมูลเด่นสุดเมื่อเทียบกับคู่แข่งนั้น สามารถให้ข้อมูลเชิงลึกด้านประสิทธิภาพในการค้นหาของสิ่งของคุณเปรียบเทียบกับคู่แข่ง กระบวนการนี้ก็ยังเปิดเผยแหล่งที่มาของการเข้าชมของคู่แข่งของคุณอีกด้วย นอกจากนี้ ก็ยังช่วยให้คุณกำหนดกลยุทธ์และลำดับความสำคัญของ SEO ของคุณเช่นกัน หากยังมีเวลาพอให้ทำในบางกรณี
ผลลัพธ์จากการใช้ฮีทแมปของ SERP - ตั๋วเครื่องบิน
ตรงนี้จะเป็นด้านผลที่ได้รับจากการใช้ความพยายามสักนิดในการเขียนเล่นกับโค้ด Python ปะมาณสองสามบรรทัด
มาเริ่มกันเลย
ในบทความนี้ ผมจะทำการอธิบายว่าคุณจะสามารถหาผลประโยชน์อะไรได้บ้างจากการใช้ไลบรารี Python Advertools (โดย Elias Dabbas) ในการปรับปรุงความสามารถในการวิเคราะห์เชิงและวิชวลไลซ์กระบวนการแข่งขันของคุณได้อย่างไร นอกจากนี้ คุณจะได้รับรางวัลจากการใช้ฮีทแมป SERP แบบโต้ตอบได้ ที่จะทำการแสดงสิ่งที่ถูกครอบคลุมต่างๆให้เห็น รวมทั้งลักษณะและอันดับโดยเฉลี่ยของคู่แข่งที่คุณต้องการศึกษา เรามาเริ่มเซ็ตสภาพแวดล้อมกันเลยดีกว่า
วิธีการติดตั้ง Jupyter Lab
สำหรับบทเรียนนี้ ผมจะเน้นไปด้านการตั้งค่าสภาพต่างๆให้เหมาะสมในการนำมาใช้กับ OSX
โดยที่ผมจะเป็นคนเลือกสภาพแวดล้อมและพื้นที่ทำงานของ Jupyter Lab มาใช้ คุณสามารถข้ามขั้นตอนนี้ แล้วตรงไปที่ส่วนการเขียนโค้ดไปได้เลย หากว่าคุณคุ้นเคยกับ Google Colab อยู่แล้ว
มาเริ่มต้นด้วยการติดตั้งแบบง่ายๆลงบน Terminal
ของคุณ ตอนนี้แค่ไปที่ Applications > Utilities
แล้วมองหา Terminal.app ให้เปิด Terminal
แล้วเพิ่มตอมมานง่ายๆนี้ลงไปเพื่อเริ่มการติดตั้ง
brew install jupyterlab
หากคุณใช้ Linux เป็นโอเอส คุณก็สามารถใช้คำสั่งเดิมนี้ หรือจะลองวิธีอื่นในการติดตั้ง Jupyter Lab บนแพลตฟอร์มที่คุณต้องการตามที่มีไว้ให้ในหน้าเพจการติดตั้งหลัก
จะเริ่มใช้ Jupyter Lab ยังไง
ทั้งหมดนี้คือทุกสิ่งที่จำเป็นได้รับการติดตั้งลงบนระบบของคุณ ตอนนี้เหลือแค่ป้อนคำสั่งนี้ลงใน Terminal
jupyter lab
ในเบราว์เซอร์เริ่มต้นของคุณจะมีการเปิดแท็บที่มี http://localhost:8888
มาเริ่มเขียนโค้ดกันเลย
ไปที่ File > New > Notebook
จะมีแท็บใหม่เปิดขึ้นมาให้สำหรับคุณ สิ่งแรกที่คุณต้องทำคือติดตั้งไลบรารีก่อนในการที่จะเล่นกับตัวแปรที่จำเป็น
การติดตั้งไลบรารี
ไลบรารีเหล่านี้จะถูกติดตั้งไว้ใน Jupiter Lab
โดยจะมีความแตกต่างเล็กน้อยหากเทียบกับเหล่าคำสั่ง Terminal
มาตรฐานทั่วไป โดยคุณต้องเอ็นเทอร์ก่อนคำสั่ง !
(เครื่องหมายอัศเจรีย์)
!pip install advertools
!pip install adviz
ในหน้า Jupiter Lab
ของคุณจะมีลักษณะเช่นนี้ หากต้องการเรียกใช้คำสั่ง คุณจะต้องกำลังเปิดหน้าฟิลด์ที่กำลังใช้งานที่มีโค้ดของคุณอยู่ แล้วกด Shift + Enter
หากต้องการป้อนโค้ดต่อไป คุณต้องกดที่ไอคอน +
ตรงด้านบนซะก่อน เพื่อเพิ่มช่องว่างใหม่สำหรับป้อนซินแท็กซ์โค้ดอันใหม่
การอิมพอร์ทนำเข้าแพ็คเกจ
อะไรที่ติดตั้งไปแล้วจะต้องผ่านการอิมพอร์ทนำเข้ามาซะก่อนถึงจะใช้ได้ ดังนั้นเราจะทำการนำเข้า pandas
, advertools
, adviz
และ plotly
เข้าสู่ช่องใหม่ของโค้ดนี้
import pandas as pd
import advertools as adv
import adviz
import plotly.express as px
การตั้งค่าเครื่องมือค้นหาเซิร์จเอนจิ้นและคีย์ API โดยเฉพาะ
คุณจะต้องทำการตั้งค่า ID ของเครื่องเซิร์จเอ็นจิ้นโดยเฉพาะนี้ซะก่อน (ตรงโค้ด cx) เพื่อทำการคิวรี่เซิร์จเอ็นจิ้นที่คุณต้องการผ่าน API จากนั้นค่อยตามด้วยรายการคีย์เวิร์ดที่คุณต้องการรับผลลัพธ์มาดูหลังจากที่ทำไปแล้ว ไปที่ Programmable search engine homepageเพื่อดูว่าจะ ค้นหาอะไร?
เลือก ○ ค้นหาทั้งเว็บ
ในการตั้งค่าการค้นหา
เลือก ○ ค้นหารูปภาพ
และ ○ การค้นหาแบบปลอดภัย
กดติ๊กเครื่องหมาย reCAPTCHA
แล้วกดสร้าง
จากสคริปต์ทั้งหมดนี้ คุณแค่คัดลอกเฉพาะส่วนหลัง cx=
นี้ก็พอ
<script async src="https://cse.google.com/cse.js?cx=YOUR-SEARCH-ENGINE-ID">
</script>
<div class="gcse-search"></div>
หากต้องการให้มี API ในการค้นหาโดยเฉพาะ ให้ไปที่ตรงนี้แล้วกด Get a Key
โค้ดที่คุณได้คัดลอกไปนั้นจะอ้างอิงถึง key
ในสคริปต์ สิ่งที่จะถูกส่งไปยังฟิลด์ Jupyter lab
ก็คือโค้ดสุดท้ายอันนี้
cx = "YOUR-SEARCH-ENGINE-ID"
key = "YOUR-CUSTOM-SEARCH-API-KEY"
เช็คคีย์เวิร์ดด้วยการใช้ API
ในส่วนนี้ เราจะทำการคิวรี่ API ผ่านการใช้ Advertools
เป็น adv
โดยใช้ serp_goog
เป็นตัวช่วย ผมจะสร้างตัวแปร dataz
ไว้จัดเก็บผลลัพธ์ โดยคุณสามารถตั้งชื่อตัวแปรนั้นยังไงก็ได้ โดยค่า gl=["th”]
จะเป็นตัวกำหนดค่าใน Google
ที่คุณต้องการค้นหา ซึ่งในกรณีนี้ก็คือ Google.co.th
ในส่วนโค้ดสุดท้ายของคุณนี้ ถ้าอยากคุณจะเพิ่มคีย์เวิร์ดเพิ่มเติมเข้าไปอีกก็ได้ โดยวัตถุประสงค์ของโค้ดนี้ ผมได้เลือกเพียงแค่บางส่วนเท่านั้น ถ้าคุณอยากที่จะทดลองอะไรเพิ่มเติมก็ตามแต่
dataz = adv.serp_goog(cx=cx,
key=key,
gl=["th"],
q=["จอง ตั๋ว เครื่องบิน",
"จอง ตั๋ว เครือ ง บิน",
"ตั๋ว เครื่อง บิน",
"จองตั๋ว",
"จองตั๋วล่วงหน้า",
"จองตั๋วออนไลน์",
"จอง ตั๋ว เครื่อง เครื่องบิน",
"ตั๋ว ถูก",
"ตั๋วเครื่องบิราคถูก",
])
เมื่อคุณเรียกใช้ฟิลด์นี้ด้วย Shift + Enter
กระบวนการคิวรี่ก็จะเริ่มขึ้น คุณแค่รอก็พอ
หากอยากจะรู้ว่าคุณสามารถตั้งค่าอะไรอีกบ้างในการใช้
serp_goog
ให้ป้อนช่องว่างของ Jupyter Labadv.serp_goog?
(ที่มี ? เครื่องหมายคำถาม)
วาดแผนที่ฮีทแมปโดยใช้ SERP
ส่วนโค้ดตรงนี้จะตรงๆไปเลย จะให้มันเยอะกว่านี้ก็ได้ คุณก็สามารถแก้ไขผ่าน fig
ค่าเกือบทั้งหมดที่คุณจะเห็นจะเป็นฮีทแมป SERP
แต่สำหรับกรณีนี้ ผมจะทำให้มันง่ายที่สุดเท่าที่จะทำได้ หากเราใช้ fig.layout.title
เราก็จะสามารถทำการกำหนดชื่อของแผนที่ฮีทแมปได้ ผมตั้งชื่อตัวแปรนี้ว่า dataz ผ่าน serp_heatmap
ที่ตรงนี้ เราจะทำการกำหนดผลลัพธ์จำนวนหนึ่งให้เป็น num_domains
(จำนวนโดเมน) ทั้งหมดนี้ คือสิ่งที่เราต้องตั้งค่าเพื่อสร้างฮีทแมปของ SERP
adviz.serp_heatmap(dataz,
num_domains=10)
fig = adviz.serp_heatmap(dataz)
fig.layout.title = "ผลลัพธ์จากการใช้ฮีทแมปของ SERP - ตั๋วเครื่องบิน"
fig
ผลลัพธที่โต้ตอบได้แบบฮีทแมป SERP - ตั๋วเครื่องบิน
ตามที่แสดงไว้ตรงข้างต้น ตอนนี้คุณควรจะเห็นผลลัพธ์ที่เป็นแบบฮีทแมป SERP ในฟิลด์ใหม่ของ Jupyter Lab ได้แล้ว โดยมันจะเป็นแบบอินเตอร์แรคทีฟคือสามารถโต้ตอบได้อย่างสมบูรณ์ เพราะงั้น คุณจะสามารถวางเมาส์เหนือวงกลมเพื่อดูว่าคีย์เวิร์ดใดในตำแหน่งใดที่ถูกเรียกใช้ในแต่ละโดเมน ดังที่แสดงในแผนที่ฮีทแมป SERP แบบโต้ตอบได้อันนี้
ผลลัพธ์ที่ไม่เสถียรในฮีทแมป SERP
ผลลัพธ์อาจแตกต่างกันไปขึ้นกับวันที่คุณทำการวิเคราะห์ เนื่องจากเว็บไซต์ส่วนใหญ่ผลิตเนื้อหาและอัลกอริทึมของ Google สะท้อนถึงการเปลี่ยนแปลง และคำนวณความครอบคลุมและตำแหน่งใหม่สำหรับแต่ละโดเมน/เว็บไซต์ต่างๆที่เกิดขึ้น (เว็บไซต์ข่าวอัปเดตบ่อยที่สุด) แทบจะทันที
ยกตัวอย่างเช่น ก่อนเทศกาลวันหยุด วันตรุษจีน หรือวันหยุดประจำชาติไทยอื่นๆ สามารถทำให้การจัดอันดับเว็บไซต์บางแห่งดีขึ้นมาอย่างแปลกหูแปลกตาก็ได้ เพราะเว็บนั้นอาจมีข้อเสนอโปรโมชั่นที่เกี่ยวข้องกับ (จุดหมายปลายทาง) พิเศษให้ เลยทำให้เครื่องมือค้นหาจะดำเนินการโดยรวมผลพิเศษนี้ไปด้วย
วิธีปรับเปลี่ยนผลลัพธ์ของฮีทแมป SERP ให้เป็นไปตามตามโดเมนระดับบนสุด
หากคุณต้องการจำกัดผลลัพธ์ในฮีทแมป SERP ให้มันแคบลงเหลือแค่เฉพาะโดเมนจากประเทศใดประเทศหนึ่งเท่านั้น หรือจะพูดว่าอยากจำกัดแค่ผลการค้นหาเฉพาะจากเอกสารที่มาจากประเทศใดประเทศหนึ่ง คุณอาจใช้ตัวดำเนินการบูลีนในค่าของพารามิเตอร์ cr
โดยโค้ดทั้งหมดนี่มีไว้เพื่อจำกัดโดเมนที่มาจากประเทศไทยเท่านั้น คือ cr=["countryTH"]
(วางไว้ตรงโค้ดที่คุณระบุว่าเป็นคีย์หลัก) จากนั้น Google Search จะทำการกำหนดประเทศของเอกสารโดยการวิเคราะห์โดเมนด้านบนสุด (TLD) จาก URL ของเอกสาร และตำแหน่งทางภูมิศาสตร์ของที่อยู่ IP ของเว็บเซิร์ฟเวอร์
ขอขอบคุณ San สำหรับงานแปลบทความนี้ และ Goh Rhy Yan สำหรับภาพปกจาก Unsplash
Posted on April 13, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.