ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

                               Selenium (ซิลิเนี่ยม) เป็น Software Testing Framework (ซอฟแวร์ เทสติ้ง เฟรมเวิร์ค) ที่มีประสิทธิภาพทีดีมากตัวหนึ่งในปัจจุบัน ซึ่งเอาไว้ใช้สำหรับการทำ Automated Testing (ออโต้เมท เทสติ้ง) หรือ พูดง่ายๆก็คือ มันทำให้เราสามารถควบคุมหน้าเว็บได้โดยการเขียนโปรแกรม ซึ่งในPython คืออะไร ไพธอนได้มีโมดูล Selenium (ซิลิเนียม) รองรับแล้วอีกทั้งมันยังเป็นซอฟต์แวร์ Open source (โอเพ่น ซอส) หรือ ฟรีนั่นเอง อีกทั้งยังสามารถรันได้ในหลายๆระบบปฏิบัติการเช่น วินโดวส์ ลินุกซ์ 

 

ข้อผิดพลาดในการเปิดหน้าเว็บบราวเซอร์คืออะไร

                                 โดยปกติแล้วถ้าเราใช้คำสั่งเปิดหน้าเว็บของโมดูล Selenium เราก้สามารถใช้คำสั่ง  driver.get("url") ได้เลยแต่ในบางครั้งอาจจะมีข้อผิดพลาด เกิดขึ้นได้ในบางครั้งดังในรูปภาพด้านล่าง เราจึ่งต้องเขียนโค้ดขึ้นมาป้องกันด้วย

วิธีการแก้ไขข้อผิดพลาดในการเปิดหน้าเว็บบราวเซอร์ ด้วยภาษาไพธอน     

                              1.เรานั้นสามารถเขียนโค้ดขึ่นมาเพื่อเช็คความผิดพลาดได้ดังนี้

from selenium import webdriver
import time
driver = webdriver.Firefox(executable_path=r'D:\New Folder\python_test\Mt24\geckodriver.exe')


def open_web(web_page):  # ฟังก์ชั่นเปิดเว็บและเช็คผิดพลาด
    element = "</body></html>" #footer(เป็นโครงสร้างของเว็บที่อยุ่ล่างสุดถ้าไม่มีอันนี้แสดงว่าการโหลดผิดพลาด)
    driver.get(web_page)
    time.sleep(0.5)
    while 1:
        check = driver.page_source #เช็คโครงสร้างของหน้าเว็บ
        if (check.find(element) == (-1)):  # เช็คความผิดพลาดของหน้าเว็บ
            print("พบตวามผิดพลาดของเว็บ%s" % web_page)
            driver.get(web_page)  #ถ้าเกิดพบความผิดพลาดจะเปิดหน้าเว็บอีกครั้งหนึ่ง
            print("โหลดเว็บใหม่อีกรอบ")
        else:
            print("ไม่พบความผิดพลาดของเว็บ%s" % web_page)
            break

open_web("https://www.google.co.th/")

                             

                         2.ผลการรัน

ไม่พบความผิดพลาดของเว็บhttps://www.google.co.th/

 

อ้างอิงรูปภาพ selenium hq

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
คาดการณ์สเปคและฟีเจอร์ของ iPhone 12 พร้อมอัปเดตข่าวล่าสุด
โดย mintsaccount พฤ 12 พ.ย. 2020 12:41 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
88
พฤ 12 พ.ย. 2020 12:41 am โดย mintsaccount
ขอสอบถามวิธีแก้ปัญหา ข้อมูลไม่เข้าแสดงผล ในตารางหน่อยครับ
โดย makup พ 11 พ.ย. 2020 8:23 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
7
97
พฤ 12 พ.ย. 2020 4:51 pm โดย thatsawan
เว็บไซต์ คืออะไร มีประโยชน์อย่างไร ต่อธุรกิจ
โดย ploypola จ 09 พ.ย. 2020 5:29 pm บอร์ด Share Knowledge
0
147
จ 09 พ.ย. 2020 5:29 pm โดย ploypola
วิธีการใช้ while ในภาษา python
โดย bolue จ 09 พ.ย. 2020 3:26 pm บอร์ด Python Knowledge
0
212
จ 09 พ.ย. 2020 3:26 pm โดย bolue
วิธีการเดินจาก แม่สอด จังหวัดตาก มา กทม
โดย makup จ 05 ต.ค. 2020 2:21 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
158
จ 05 ต.ค. 2020 2:21 pm โดย makup
การสร้างกลุ่มในแอพพลิเคชั่นไลน์ บน โทรศัพท์มือถือ
โดย Bellamy ศ 06 พ.ย. 2020 7:27 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
184
ศ 06 พ.ย. 2020 7:27 pm โดย Bellamy
การกำหนดที่อยู่ของเราบน Google map
โดย Bellamy ศ 06 พ.ย. 2020 6:44 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
200
ศ 06 พ.ย. 2020 6:44 pm โดย Bellamy
ขอวิธีทำให้ตัวอักษร Keyword , ไปแสดงตรง tag ค้นหา หน่อยครับ
โดย makup ศ 06 พ.ย. 2020 11:44 am บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
6
243
พฤ 12 พ.ย. 2020 12:30 pm โดย makup