ในบทความนี้ ฉันจะแสดงวิธีรับ URL ปัจจุบันของเบราว์เซอร์ด้วย Selenium มาเริ่มกันเลยดีกว่า
ข้อกำหนดเบื้องต้น:
หากต้องการลองใช้คำสั่งและตัวอย่างของบทความนี้ คุณต้องมี
1) การแจกจ่าย Linux (ควรเป็น Ubuntu) ที่ติดตั้งบนคอมพิวเตอร์ของคุณ
2) Python 3 ติดตั้งบนคอมพิวเตอร์ของคุณ
3) PIP 3 ติดตั้งบนคอมพิวเตอร์ของคุณ
4) Python virtualenv แพ็คเกจที่ติดตั้งบนคอมพิวเตอร์ของคุณ
5) เว็บเบราว์เซอร์ Mozilla Firefox หรือ Google Chrome ที่ติดตั้งบนคอมพิวเตอร์ของคุณ
6) ต้องรู้วิธีการติดตั้งไดรเวอร์ Firefox Gecko หรือ Chrome Web Driver
เพื่อปฏิบัติตามข้อกำหนด 4, 5 และ 6 โปรดอ่านบทความของฉัน รู้เบื้องต้นเกี่ยวกับซีลีเนียมด้วย Python 3 ที่ Linuxhint.com
คุณสามารถค้นหาบทความมากมายในหัวข้ออื่น ๆ ได้ที่ LinuxHint.com . อย่าลืมตรวจสอบหากคุณต้องการความช่วยเหลือ
การตั้งค่าไดเรกทอรีโครงการ:
เพื่อให้ทุกอย่างเป็นระเบียบ ให้สร้างไดเร็กทอรีโครงการใหม่ ซีลีเนียม-url/ ดังนี้
$mkdir -pvซีลีเนียม-url/คนขับรถ
นำทางไปยัง ซีลีเนียม-url/ ไดเรกทอรีโครงการดังต่อไปนี้:
$ซีดีซีลีเนียม-url/สร้างสภาพแวดล้อมเสมือน Python ในไดเร็กทอรีโครงการดังนี้:
$virtualenv .venv
เปิดใช้งานสภาพแวดล้อมเสมือนดังต่อไปนี้:
$แหล่งที่มา.venv/เป็น/เปิดใช้งานติดตั้งไลบรารี Selenium Python ในสภาพแวดล้อมเสมือนของคุณโดยใช้ PIP3 ดังนี้:
$ pip3 ติดตั้งซีลีเนียม
ดาวน์โหลดและติดตั้งไดรเวอร์เว็บที่จำเป็นทั้งหมดในไฟล์ คนขับรถ/ ไดเรกทอรีของโครงการ ฉันได้อธิบายขั้นตอนการดาวน์โหลดและติดตั้งไดรเวอร์เว็บในบทความของฉันแล้ว รู้เบื้องต้นเกี่ยวกับซีลีเนียมด้วย Python 3 . หากคุณต้องการความช่วยเหลือ ค้นหาใน LinuxHint.com สำหรับบทความนั้น
ฉันจะใช้เว็บเบราว์เซอร์ Google Chrome สำหรับการสาธิตในบทความนี้ ดังนั้นฉันจะใช้ chromedriver ไบนารีกับซีลีเนียม คุณควรใช้ คนขับตุ๊กแก binary หากคุณต้องการใช้เว็บเบราว์เซอร์ Firefox
สร้างสคริปต์ Python ex01.py ในไดเร็กทอรีโครงการของคุณและพิมพ์โค้ดต่อไปนี้ลงไป
จากซีลีเนียมนำเข้าไดรเวอร์เว็บจากซีลีเนียม.ไดรเวอร์เว็บ.ทั่วไป.กุญแจ นำเข้ากุญแจ
ตัวเลือก=ไดรเวอร์เว็บChromeOptions()
ตัวเลือก.หัวขาด = จริง
เบราว์เซอร์=ไดรเวอร์เว็บโครเมียม(executable_path='./drivers/chromedriver',ตัวเลือก=ตัวเลือก)
เบราว์เซอร์รับ('https://duckduckgo.com/')
พิมพ์(เบราว์เซอร์ปัจจุบัน_url)
เบราว์เซอร์ปิด()
เมื่อเสร็จแล้วให้บันทึก ex01.py สคริปต์ไพทอน
ที่นี่ บรรทัดที่ 1 และบรรทัดที่ 2 นำเข้าส่วนประกอบที่จำเป็นทั้งหมดจากไลบรารี Python selenium
บรรทัดที่ 4 สร้างวัตถุตัวเลือกของ Chrome และบรรทัดที่ 5 เปิดใช้งานโหมดหัวขาดสำหรับเว็บเบราว์เซอร์ Chrome
บรรทัดที่ 7 สร้าง Chrome เบราว์เซอร์ วัตถุโดยใช้ chromedriver เลขฐานสองจาก คนขับรถ/ ไดเรกทอรีของโครงการ
บรรทัดที่ 9 บอกให้เบราว์เซอร์โหลดเว็บไซต์ duckduckgo.com
บรรทัดที่ 10 พิมพ์ URL ปัจจุบันของเบราว์เซอร์ ที่นี่, browser.current_url คุณสมบัติใช้เพื่อเข้าถึง URL ปัจจุบันของเบราว์เซอร์
บรรทัดที่ 12 ปิดเบราว์เซอร์
เรียกใช้สคริปต์ Python ex01.py ดังนี้
$ python3 ex01.พายอย่างที่คุณเห็น URL ปัจจุบัน ( https://duckduckgo.com ) พิมพ์บนคอนโซล
ในตัวอย่างก่อนหน้านี้ ฉันได้เยี่ยมชมเว็บไซต์ duckduckgo.com และพิมพ์ URL ปัจจุบันบนคอนโซล ส่งคืน URL ของหน้าที่เรากำลังเยี่ยมชม ไม่แฟนซีมากเพราะเรารู้ URL ของหน้าแล้ว ตอนนี้ มาค้นหาบางสิ่งใน DuckDuckGo แล้วลองพิมพ์ URL ของหน้าผลการค้นหาบนคอนโซล
สร้างสคริปต์ Python ex02.py ในไดเร็กทอรีโครงการของคุณและพิมพ์โค้ดต่อไปนี้ลงไป
จากซีลีเนียมนำเข้าไดรเวอร์เว็บจากซีลีเนียม.ไดรเวอร์เว็บ.ทั่วไป.กุญแจ นำเข้ากุญแจ
ตัวเลือก=ไดรเวอร์เว็บChromeOptions()
ตัวเลือก.หัวขาด = จริง
เบราว์เซอร์=ไดรเวอร์เว็บโครเมียม(executable_path='./drivers/chromedriver',ตัวเลือก=ตัวเลือก)
เบราว์เซอร์รับ('https://duckduckgo.com/')
พิมพ์(เบราว์เซอร์ปัจจุบัน_url)
ค้นหาอินพุต=เบราว์เซอร์find_element_by_id('search_form_input_homepage')
ค้นหาอินพุตsend_keys('ซีลีเนียม HQ'+ กุญแจเข้าสู่)
พิมพ์(เบราว์เซอร์ปัจจุบัน_url)
เบราว์เซอร์ปิด()
เมื่อเสร็จแล้วให้บันทึก ex02.py สคริปต์ไพทอน
ในที่นี้ บรรทัดที่ 1-10 เหมือนกับใน ex01.py . ดังนั้น ฉันจะไม่อธิบายพวกเขาอีก
บรรทัดที่ 12 ค้นหากล่องข้อความค้นหาและเก็บไว้ใน ค้นหาอินพุต ตัวแปร.
บรรทัดที่ 13 ส่งคำค้นหา ซีลีเนียม hq ใน ค้นหาอินพุต กล่องข้อความแล้วกด ใช้กุญแจ คีย์.ENTER .
เมื่อหน้าค้นหาโหลดขึ้นมา browser.current_url ใช้เพื่อเข้าถึง URL ปัจจุบันที่อัปเดต
บรรทัดที่ 15 พิมพ์ URL ปัจจุบันที่อัปเดตบนคอนโซล
บรรทัดที่ 17 ปิดเบราว์เซอร์
เรียกใช้ ex02.py สคริปต์ Python ดังต่อไปนี้:
$ python3 ex02.พายอย่างที่คุณเห็น สคริปต์ Python ex02.py พิมพ์ 2 URL
อันแรกคือ URL หน้าแรกของเครื่องมือค้นหา DuckDuckGo
อันที่สองคือ URL ปัจจุบันที่อัปเดตหลังจากทำการค้นหาในเครื่องมือค้นหา DuckDuckGo โดยใช้ข้อความค้นหา ซีลีเนียม hq .
บทสรุป:
ในบทความนี้ ฉันได้แสดงวิธีรับ URL ปัจจุบันของเว็บเบราว์เซอร์โดยใช้ไลบรารี Selenium Python ตอนนี้ คุณควรจะทำให้โครงการซีลีเนียมของคุณน่าสนใจยิ่งขึ้น