จากการที่เรานั้นได้ศึกษาการใช้งานเกียวกับโมดูล 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
กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
Jquery หาค่าของ id จาก String หรือ จาก tag ต่างเช่น tag img , a href
โดย mindphp ศ 04 พฤษภาคม 2012 12:16 am บอร์ด AJAX Javascript Library - jQuery
2
9751
ศ 04 พฤษภาคม 2012 12:49 pm โดย mindphp View Topic Jquery หาค่าของ id จาก String หรือ จาก tag ต่างเช่น tag img , a href
function เลียนแบบ print_r ใน php ของ Javascript
โดย mindphp พฤ 03 พฤษภาคม 2012 11:38 pm บอร์ด AJAX Javascript Library - jQuery
2
7852
ศ 04 พฤษภาคม 2012 10:03 am โดย mindphp View Topic function เลียนแบบ print_r ใน php ของ Javascript
คือผมกำลังทำโปรแกรมเกี่ยวกับการตัดเหล็ก คำนวนได้ด้วยว่าจะใช้เหล็กมาตรฐานกี่เส้น
โดย legends พฤ 03 พฤษภาคม 2012 9:25 pm บอร์ด Programming - C/C++ & java & Python
4
3890
ศ 11 พฤษภาคม 2012 9:19 am โดย legends View Topic คือผมกำลังทำโปรแกรมเกี่ยวกับการตัดเหล็ก คำนวนได้ด้วยว่าจะใช้เหล็กมาตรฐานกี่เส้น
อยากให้ wordpress ดึงตารางในdatabase มาแสดงต้องทำไงครับ
โดย disslove พฤ 03 พฤษภาคม 2012 8:35 pm บอร์ด สอบถามปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
1
4912
ศ 04 พฤษภาคม 2012 9:33 am โดย tohkai_php View Topic อยากให้ wordpress ดึงตารางในdatabase มาแสดงต้องทำไงครับ
ต้องการเปิดหน้าใหม่โดยทับหน้าเก่าครับ
โดย OneLifeBegin พฤ 03 พฤษภาคม 2012 11:18 am บอร์ด HTML CSS
2
5258
ศ 04 พฤษภาคม 2012 9:18 am โดย OneLifeBegin View Topic ต้องการเปิดหน้าใหม่โดยทับหน้าเก่าครับ
เราสามารถสร้าง table หรือ div wrapper กลางบรรทัดได้มั้ยครับ
โดย OneLifeBegin พฤ 03 พฤษภาคม 2012 10:22 am บอร์ด HTML CSS
1
5883
ศ 04 พฤษภาคม 2012 9:22 am โดย OneLifeBegin View Topic เราสามารถสร้าง table หรือ div wrapper กลางบรรทัดได้มั้ยครับ
ปัญหาการทดลองทำ WebService แบบ ZendSOAP
โดย batman1292 พ 02 พฤษภาคม 2012 9:56 pm บอร์ด Programming - PHP
1
2180
ศ 11 พฤษภาคม 2012 6:04 pm โดย batman1292 View Topic ปัญหาการทดลองทำ WebService แบบ ZendSOAP
แก้ปัญหา Access forbidden! xampp phpmyadmin
โดย mindphp พ 02 พฤษภาคม 2012 6:34 pm บอร์ด Programming - PHP
0
10141
พ 02 พฤษภาคม 2012 6:34 pm โดย mindphp View Topic แก้ปัญหา Access forbidden! xampp phpmyadmin