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

                               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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
วิธีก่ารแปลง ข้อมมูลจาก Excel เพื่อบันทึกลงในฐานข้อมูล
โดย Ittichai_chupol พฤ 02 ม.ค. 2020 4:58 pm บอร์ด PHP Knowledge
0
1246
พฤ 02 ม.ค. 2020 4:58 pm โดย Ittichai_chupol
อยากทราบวิธีการเรียกใช้งานไฟล์ javascript ได้ทั้งใน phpbb 3.1 กับ phpbb 3.2
โดย Ittichai_chupol พฤ 02 ม.ค. 2020 3:44 pm บอร์ด Programming - PHP
1
122
พฤ 02 ม.ค. 2020 4:09 pm โดย thatsawan
ท่องเที่ยวจังหวัดเชียงราย รู้ไหมจะต้องไป วัดพระแก้ว
โดย Meygrand พฤ 02 ม.ค. 2020 1:18 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
71
พฤ 02 ม.ค. 2020 1:18 pm โดย Meygrand
ปฏิทินประจําปี 2563 อาหารใครสายกิน สารหิวต้องโดน
โดย noppadonsk พฤ 02 ม.ค. 2020 12:31 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
131
พฤ 02 ม.ค. 2020 12:31 pm โดย noppadonsk
ตำแหน่งไฟล์ ที่เก็บ my.cnf ไฟล์ ตั้งค่าระบบของ MySQL เวอร์ชั่นต่างๆ และ ติดตั้งบน OS ต่างๆ
โดย mindphp พ 01 ม.ค. 2020 1:24 pm บอร์ด Linux - Web Server
0
75
พ 01 ม.ค. 2020 1:24 pm โดย mindphp
เปิดใช้งาน log_slow_queries MySQL 5.7 บน Ubuntu
โดย mindphp อ 31 ธ.ค. 2019 5:55 pm บอร์ด Linux - Web Server
0
770
อ 31 ธ.ค. 2019 5:55 pm โดย mindphp
อยากทราบวิธีการแสดงที่มี id ซ้ำกันครับ
โดย jamepiyawat ส 28 ธ.ค. 2019 4:22 pm บอร์ด Programming - PHP
3
148
พฤ 02 ม.ค. 2020 8:47 am โดย tsukasaz
ปฏิทินประจําปี 2563 นักษัตย์ 12 ราศี ของจีนที่เรามักคุ้นเคยกัน
โดย noppadonsk ส 28 ธ.ค. 2019 10:40 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
506
ส 04 ม.ค. 2020 4:38 am โดย mindphp
คำสั่งจาก LINE API บันทึกเรียบร้อยแล้ว แต่ไม่เข้าไปใน inbox e-mail : order@dapper.com [2019-12][002]
โดย thatsawan ศ 27 ธ.ค. 2019 5:56 pm บอร์ด MD-CRM - Tester
2
5
ศ 27 ธ.ค. 2019 9:25 pm โดย mindphp
อยากทราบวิธีการอัพโหลดรูปภาพลงใน9kik'ฐานข้อมูล ของ phpbb
โดย Ittichai_chupol ศ 27 ธ.ค. 2019 4:22 pm บอร์ด Programming - PHP
1
123
ศ 27 ธ.ค. 2019 4:38 pm โดย thatsawan
ปฏิทินประจําปี 2563 ธีมการศึกษาสำหรับเด็กเรียน
โดย noppadonsk ศ 27 ธ.ค. 2019 10:41 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
686
ส 04 ม.ค. 2020 4:38 am โดย mindphp
B - ข้อมุลเชื่อม ตำบลที่มี รหัสไปรษณี ไม่เหมือน อำเภอข้อมมูลผิด
โดย mindphp พฤ 26 ธ.ค. 2019 3:01 pm บอร์ด Odoojob.com - Tester
0
2
พฤ 26 ธ.ค. 2019 3:01 pm โดย mindphp
ปฏิทินประจําปี 2563 มาในธีมปาร์ตี้และการเฉลิมฉลอง
โดย noppadonsk พฤ 26 ธ.ค. 2019 1:51 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
486
ส 04 ม.ค. 2020 4:38 am โดย mindphp
B - SQL ทำงานช้า
โดย mindphp พ 25 ธ.ค. 2019 10:07 pm บอร์ด Odoojob.com - Tester
0
2
พ 25 ธ.ค. 2019 10:07 pm โดย mindphp
ทิปเล็กๆ การใช้งาน Directadmin บน Ubuntu หรือ CentOS ใช้ .tar.gz จะทำงานได้เร็วกว่า..
โดย mindphp พ 25 ธ.ค. 2019 8:53 pm บอร์ด Linux - Web Server
0
68
พ 25 ธ.ค. 2019 8:53 pm โดย mindphp
เครื่องมือในการคำนวณภาษีหัก ณ ที่จ่าย ลดภาระการเสียภาษีก้อนใหญ่ได้ง่ายๆ
โดย prmindphp พ 25 ธ.ค. 2019 6:56 pm บอร์ด MindPHP News & Feedback
0
63
พ 25 ธ.ค. 2019 6:56 pm โดย prmindphp
วิธีการเขียน SQL เพื่อเปลี่ยนชื่อตาราง ในฐานข้อมูลเมื่อมีการเขียนชื่อตารางผิด
โดย Ittichai_chupol พ 25 ธ.ค. 2019 5:15 pm บอร์ด SQL Knowledge
0
70
พ 25 ธ.ค. 2019 5:15 pm โดย Ittichai_chupol
แก้ปัญหา ใช้ Python โอนย้ายไฟล์ข้ามเครื่อง ด้วย ftplib แล้วเจอ Connection timed out
โดย mindphp พ 25 ธ.ค. 2019 1:21 pm บอร์ด Python Knowledge
0
60
พ 25 ธ.ค. 2019 1:21 pm โดย mindphp
ตัวช่วยในคำนวณอัตราดอกเบี้ยสำหรับนักลงทุน
โดย prmindphp อ 24 ธ.ค. 2019 6:52 pm บอร์ด MindPHP News & Feedback
0
68
อ 24 ธ.ค. 2019 6:52 pm โดย prmindphp
วิธีการดึงกลุ่มของ phpbb มาสร้างเป็น listbox พร้อมเปลี่ยนชื่อกลุ่มตามภาษาที่กำหนด
โดย Ittichai_chupol อ 24 ธ.ค. 2019 6:35 pm บอร์ด PHP Knowledge
0
60
อ 24 ธ.ค. 2019 6:35 pm โดย Ittichai_chupol