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

                               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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
การเขียน Er-Diagram
โดย moo1997 จ 20 ก.ค. 2020 5:23 pm บอร์ด SQL Knowledge
0
185
จ 20 ก.ค. 2020 5:23 pm โดย moo1997
การเดินทางจากปราจีนบุรี มากรุงเทพมหานคร
โดย moo1997 จ 20 ก.ค. 2020 3:43 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
195
จ 20 ก.ค. 2020 3:43 pm โดย moo1997
CRM - Customer Relationship Management
โดย moo1997 จ 20 ก.ค. 2020 2:29 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
151
จ 20 ก.ค. 2020 2:29 pm โดย moo1997
สอบถามการหาค่าเฉลี่ยจาก timestamp ค่ะ sql
โดย Anonymous อ 19 ก.ค. 2020 5:19 pm บอร์ด Programming - PHP
1
323
จ 20 ก.ค. 2020 10:22 am โดย icphp
วิธีแก้ปัญหาตัวอักษรในใบปริ้นเอกสารจากตัวระบบห่าง ใน OpenERP / Odoo
โดย natthanit.r2538 ส 18 ก.ค. 2020 12:30 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
191
ส 18 ก.ค. 2020 12:30 pm โดย natthanit.r2538
เตรียมตัว นำเสนอ เก็บข้อมูล เชื่อม ERP เชื่อม E-COMMERCE พรีโม เทรดดิ้ง จำกัด
โดย mindphp พฤ 02 เม.ย. 2020 10:42 am บอร์ด พรีโม เทรดดิ้ง (Main)
26
60
พฤ 23 ก.ค. 2020 10:57 am โดย natthanit.r2538
argparse คืออะไร
โดย jirawoot พฤ 16 ก.ค. 2020 12:43 pm บอร์ด Python Knowledge
0
1731
พฤ 16 ก.ค. 2020 12:43 pm โดย jirawoot
เวอร์ชั่นใหม่มาแล้ว Joomla 3.9.20 อัพเดทความปลอดภัยหลายจุด
โดย tsukasaz พ 15 ก.ค. 2020 1:45 pm บอร์ด MindPHP News & Feedback
0
265
พ 15 ก.ค. 2020 1:45 pm โดย tsukasaz
วิธีการ การลิ้งค์ข้อมูลข้าม Sheet ใน Google Sheet คู่มือ บทความสอน
โดย Phakakrong อ 14 ก.ค. 2020 6:03 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
174
อ 14 ก.ค. 2020 6:03 pm โดย Phakakrong
c# read excel .xlsx
โดย jataz2 อ 14 ก.ค. 2020 2:50 pm บอร์ด Programming - C/C++ & java & Python
0
155
อ 14 ก.ค. 2020 2:50 pm โดย jataz2
การเทสแป้นพิมพ์
โดย natthanit.r2538 อ 14 ก.ค. 2020 1:43 pm บอร์ด Share Knowledge
0
135
อ 14 ก.ค. 2020 1:43 pm โดย natthanit.r2538
c# example format digit
โดย jataz2 อ 14 ก.ค. 2020 10:29 am บอร์ด Programming - C/C++ & java & Python
0
199
อ 14 ก.ค. 2020 10:29 am โดย jataz2
c# example read csv file
โดย jataz2 อ 14 ก.ค. 2020 10:20 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
102
อ 14 ก.ค. 2020 10:20 am โดย jataz2
งานประจำวันที่ 14 กรกฏาคม 2563
โดย Phakakrong อ 14 ก.ค. 2020 9:36 am บอร์ด M105 - ผกากรอง กุสาวดี
2
26
อ 14 ก.ค. 2020 7:26 pm โดย Phakakrong
การเขียนโพสต์แชร์ในบอร์ดด้วยรูปแบบที่ถูกต้อง
โดย Phakakrong จ 13 ก.ค. 2020 5:33 pm บอร์ด Share Knowledge
0
148
จ 13 ก.ค. 2020 5:33 pm โดย Phakakrong
วิธีการทำ Logged Calls รับ / โทรออก
โดย Phakakrong จ 13 ก.ค. 2020 2:52 pm บอร์ด M105 - ผกากรอง กุสาวดี
0
22
จ 13 ก.ค. 2020 2:52 pm โดย Phakakrong
ขอความช่วยเหลือ ดู Code สไลด์ แบบมีลูกศรกดด้านข้างครับ
โดย dzjp จ 13 ก.ค. 2020 2:43 pm บอร์ด Programming - PHP
0
165
จ 13 ก.ค. 2020 2:43 pm โดย dzjp
ร่วมใจให้ชุมชนดีเด่นกับโครงการธนาคารเห็ด
โดย medalezga จ 13 ก.ค. 2020 12:12 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
175
พ 15 ก.ค. 2020 9:58 am โดย Sirayu
การนำเอาข้อมูลหลายๆ Sheet(Excel ) มารวมกันด้วย Power Query
โดย Phakakrong จ 13 ก.ค. 2020 11:37 am บอร์ด Microsoft Office Knowledge & line & Etc
0
241
จ 13 ก.ค. 2020 11:37 am โดย Phakakrong
งานประจำวันที่ 13 กรกฏาคม 2563
โดย Phakakrong จ 13 ก.ค. 2020 9:43 am บอร์ด M105 - ผกากรอง กุสาวดี
4
65
จ 13 ก.ค. 2020 7:03 pm โดย Phakakrong