สามารถเช็ค check internet ด้วย python ได้

แชร์ความรู้ภาษา Python ไพทอน การเขียนโปรแกรมภาษาไพทอน

Moderators: mindphp, ผู้ดูแลกระดาน

kritsadak
PHP Full Member
PHP Full Member
Posts: 30
Joined: 24/12/2018 10:18 am

สามารถเช็ค check internet ด้วย python ได้

Postby kritsadak » 27/12/2018 11:44 am

ในบทความนี้ ได้นำภาษา python มาช่วยในการตรวจสอบการใช้งาน Internet หรือสัญญาณ wireless ที่เรากำลังเชื่อมต่ออยู่นั้นยังใช้งานได้อยู่หรือไม่ เพื่อให้สามารถตรวจสอบได้ว่าเป็นที่สัญญาณเครือข่าย เป็นที่สายอุปกรณ์ หรือจะเป็นที่ port ได้

โดยเราจะนำ library ของ python มาใช้ด้วยกัน 2 ตัวคือ socket และ urllib

# socket
จะมาเริ่มต้นที่ตัว socket ( library นี้มักจะมีอยู่กับ python แล้วไม่ต้องลงเพิ่ม)

Code: Select all

socket.create_connection(('www.google.com',80))

เป็นที่เรียกใช้ function socket library และในวงเล็บจะเป็น (host ที่ต้องการทดสอบ,port)

ตัวอย่าง Code ทั้งหมดของ socket

Code: Select all

import socket
try:
   print("checking internet connection")
   socket.create_connection(('www.google.com',80))
   status = "Connected"
   print ('network is good')
except socket.error as msg:
   status = "Not connected"
   print ('there is no internet connection')
print (status)


# urllib
ต่อมาเป็นของตัว urllib ( library นี้มักจะมีอยู่กับ python แล้วไม่ต้องลงเพิ่ม)

Code: Select all

from urllib.request import urlopen

ความหมายของ from...import... ซึ่งจะนำเอา function urlopen มาเรียกใช้งาน

Code: Select all

response = urlopen('http://google.com')

เพื่อให้ทำการทดสอบโดยเปิด url ของ google

ตัวอย่าง Code ทั้งหมดของ urllib

Code: Select all

from urllib.request import urlopen
try:
    print("checking internet connection")
    response = urlopen('http://google.com')
    status = "Connected"
    print ('network is good')
except urllib.URLError as err:
    status = "Not connected"
    print ('there is no internet connection')
print (status)


ผลลัพท์ที่ได้ จากการทดสอบกรณีที่ ใช้งาน Internet ได้ปกติ
Image

ผลลัพที่ได้ จากการทดสอบกรณีที่ ปิดการใช้งาน Internet
Image

Return to “Python Knowledge”

Who is online

Users browsing this forum: No registered users and 20 guests