จากการที่เรานั้นได้ศึกษาการใช้งานเกียวกับโมดูล Selenium (ซิลิเนี่ยม) จากบทความ วิธีการสุ่มเปิดลิงค์ที่ได้มาจากการเสริชในกูเกิ้ลโดยใช้โมดูล selenium (ซิลิเนียม)แนะนำโปรแกรมบอทสุ่มโพสต์โดยใช้โมดูล Selenium (ซิลิเนียม) ในไพธอน ,แนะนำคำสั่ง .click (คลิ๊ก) ของโมดูล Selenium (ซิลิเนียม) ในภาษาไพธอน  และบทความอื่นมาพอสมควรแล้วในบทความนี้จะมาแนะนำการประยุกต์ใช้ของเจ้าตัวโมดุลนี้กัน

 

การเปิดลิงค์ไตเติ้ลที่มีคำที่เราต้องการโดยโมดูล selenium (ซิลิเนียม) ในภาษาไพธอน

                  ในโมดูล selenium (ซิลิเนียม) นั้นเราสามารถดึงไตเติ้ลออกมาจากโครงสร้างเว็บได้ โดยในบทความนี้เราจะมาแนะนำการใช้งาน การเปิดลิงค์ที่เราต้องการโดยโมดูล selenium (ซิลิเนียม) ในภาษาไพธอน ซึ่งเราจะใช้ built in (บิ๊วอิน) ของตัวแปรสตริง ในการค้นหาคำในไตเติ้ลที่เราต้องการ เปิดลิงค์

 

วิธีการเปิดลิงค์ไตเติ้ลที่มีคำที่เราต้องการโดยโมดูล selenium (ซิลิเนียม) ในภาษาไพธอน

                   1.เปิดหน้าเว็บและโครงสร้างหน้าเว็บที่เราต้องการ  ในตัวอย่างจะเข้าถึงลิงค์และไตเติ้ลโดย XPath

                   2.เขียนโปรแกรม

# -*- coding: utf-8 -*-
from selenium import webdriver
import time,random #อิมพอร์ตโมดูล
driver = webdriver.Firefox(executable_path=r'C:\Users\BDC-CLUB\PycharmProjects\mdsoft\geckodriver.exe')
driver.get('https://www.google.com/') #เปิดหน้าเว้บที่ต้องการเก็บลิงค์และไตเติ้ล
a = driver.find_element_by_class_name("gsfi") #เข้าถึลงลิงค์และไตเติ้ลโดย XPath
a.send_keys("hello python")  #เสริชคำว่า "hello python"
a.submit()
time.sleep(3)
xpath_topic = "//div//h3//a[@href]" #XPath
ids = driver.find_elements_by_xpath(xpath_topic) #ดึงไตเติ้ลและลิงค์ออกมาจากโครงสร้างหน้าเว้บ

for i in range(len(ids)): #ลูปการหาคำที่เราต้องการ
    ids = driver.find_elements_by_xpath(xpath_topic)
    if str(ids[i].text).find("Hello")!= (-1):  #เช็คว่ามีคำที่เราต้องการอยู่ในหน้าเว็บนี้ไหม
        driver.get(ids[i].get_attribute("href")) #เปิดลิงค์
        time.sleep(1)
        driver.back()
    else:
        pass

 

ผลการรัน

ไตเติ้ลที่มีคำที่เราต้องการ Hello, World! - Learn Python - Free Interactive Python Tutorial
ไตเติ้ลที่มีคำที่เราต้องการ Python Program to Print Hello world! - Programiz
ไตเติ้ลที่มีคำที่เราต้องการ How To Write a Hello World Program in Python 3 | DigitalOcean
ไตเติ้ลที่มีคำที่เราต้องการ Say "Hello, World!" With Python | HackerRank
ไตเติ้ลที่มีคำที่เราต้องการ Hello! Python: Anthony S. Briggs: 0884771505755: Amazon.com: Books
ไตเติ้ลที่มีคำที่เราต้องการ Manning | Hello! Python
ไตเติ้ลที่มีคำที่เราต้องการ Hello World: Create your First Python Program - Guru99
ไตเติ้ลที่มีคำที่เราต้องการ Python Hello World - Quackit Tutorials
กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
งานประจำวันที่ 20 ตุลาคม 2561
โดย nice_13 ส 20 ต.ค. 2018 10:00 am บอร์ด M071 - พิชญ์สินี คงจร
0
1
ส 20 ต.ค. 2018 10:00 am โดย nice_13
งานประจำวันที่ 20 ตุลาคม 2561
โดย Ittichai_chupol ส 20 ต.ค. 2018 9:39 am บอร์ด M070 - อิทธิชัย ชูผล
0
2
ส 20 ต.ค. 2018 9:39 am โดย Ittichai_chupol
เมื่อ User ถามหางานที่บันทึกไว้จาก IT
โดย tai14 ศ 19 ต.ค. 2018 3:25 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
13
ศ 19 ต.ค. 2018 3:25 pm โดย tai14
โปรเจคทั่วไป VS โปรจคที่มีผลกับโบนัส
โดย tai14 ศ 19 ต.ค. 2018 2:23 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
13
ศ 19 ต.ค. 2018 2:23 pm โดย tai14
งานประจำวันที่ 19 ตุลาคม 2561
โดย prakon ศ 19 ต.ค. 2018 10:03 am บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
1
11
ศ 19 ต.ค. 2018 7:05 pm โดย prakon
งานประจำวันที่ 19 ตุลาคม 2561
โดย pprn ศ 19 ต.ค. 2018 9:25 am บอร์ด MT25 - นางสาวปรียากมล รินนาศักดิ์
1
4
ศ 19 ต.ค. 2018 6:28 pm โดย pprn
งานประจำวันที่ 19 ตุลาคม 2561
โดย Ittichai_chupol ศ 19 ต.ค. 2018 9:09 am บอร์ด M070 - อิทธิชัย ชูผล
1
4
ศ 19 ต.ค. 2018 6:51 pm โดย Ittichai_chupol
งานประจำวันที่ 19 ตุลาคม 2561
โดย tai14 ศ 19 ต.ค. 2018 9:05 am บอร์ด MT26 - นางสาวอัครยุภา ยงยุทธ
1
4
ศ 19 ต.ค. 2018 6:17 pm โดย tai14
งานประจำวันที่ 19 ตุลาคม 2561
โดย tatiya ศ 19 ต.ค. 2018 9:04 am บอร์ด M065 - ตติยะ นาชัย
1
5
ศ 19 ต.ค. 2018 7:01 pm โดย tatiya
งานประจำวันที่ 19 ตุลาคม 2561
โดย nice_13 ศ 19 ต.ค. 2018 8:58 am บอร์ด M071 - พิชญ์สินี คงจร
1
3
ศ 19 ต.ค. 2018 6:37 pm โดย nice_13
Q - วิธีแก้ไข้ error จากการสร้าง extension เพื่อให้แสดง module ที่แถบเมนู ใน PHPBB
โดย Ittichai_chupol พฤ 18 ต.ค. 2018 7:27 pm บอร์ด Programming - PHP
2
25
ศ 19 ต.ค. 2018 2:39 pm โดย Ittichai_chupol
มาดูปัญหาจอคอมที่แผนกไอทีต้องเจอ
โดย tai14 พฤ 18 ต.ค. 2018 6:15 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
26
พฤ 18 ต.ค. 2018 6:15 pm โดย tai14
กดลงทะเบียนสมาชิกหน้าเว็บไม่ได้
โดย Kritsana Leesakul พฤ 18 ต.ค. 2018 6:10 pm บอร์ด Joomla Development
6
31
ศ 19 ต.ค. 2018 2:37 pm โดย Kritsana Leesakul
อยากได้เทมเพลตทำเว็บe-commerce
โดย Kritsana Leesakul พฤ 18 ต.ค. 2018 6:02 pm บอร์ด Joomla Development
1
11
พฤ 18 ต.ค. 2018 11:13 pm โดย mindphp
VDO - รีวิว Module product labels (โมดูล โปรดักส์ เลเบลส์) สำหรับแสดงสินค้าที่ติดป้ายกำกับ
โดย pprn พฤ 18 ต.ค. 2018 5:59 pm บอร์ด MT25 - นางสาวปรียากมล รินนาศักดิ์
0
4
พฤ 18 ต.ค. 2018 5:59 pm โดย pprn
งานประจำวันที่ 18 ตุลาคม 2561
โดย pprn พฤ 18 ต.ค. 2018 10:11 am บอร์ด MT25 - นางสาวปรียากมล รินนาศักดิ์
1
9
พฤ 18 ต.ค. 2018 7:12 pm โดย pprn
งานประจำวันที่ 18 ตุลาคม 2561
โดย Ittichai_chupol พฤ 18 ต.ค. 2018 10:08 am บอร์ด M070 - อิทธิชัย ชูผล
1
4
พฤ 18 ต.ค. 2018 7:33 pm โดย Ittichai_chupol
งานประจำวันที่ 18 ตุลาคม 2561
โดย tai14 พฤ 18 ต.ค. 2018 10:04 am บอร์ด MT26 - นางสาวอัครยุภา ยงยุทธ
1
8
พฤ 18 ต.ค. 2018 7:27 pm โดย tai14
VDO - วิธีการแปลงไฟล์ไพธอนเป็นไฟล์ .exe
โดย prakon พฤ 18 ต.ค. 2018 10:04 am บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
1
9
ศ 19 ต.ค. 2018 10:43 am โดย prakon
งานประจำวันที่ 18 ตุลาคม 2561
โดย prakon พฤ 18 ต.ค. 2018 10:00 am บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
1
12
พฤ 18 ต.ค. 2018 7:18 pm โดย prakon