Selenium ialah alat yang berkuasa untuk automasi web, membolehkan pembangun berinteraksi dengan halaman web dan melakukan pelbagai tindakan seperti mengklik butang, memasukkan teks dan juga menatal. Dalam artikel ini, kami akan meneroka cara bekerja dengan objek pada halaman web dan mengisi borang menggunakan Selenium dalam Python. Kami akan menyelidiki contoh praktikal, alatan dan teknik untuk mengautomasikan interaksi web dengan berkesan.

Menyediakan Selenium dengan Python

Sebelum kita menyelami kerja dengan objek dan borang, mari mulakan dengan menyediakan Selenium dalam Python. Berikut ialah langkah asas untuk bermula:

Pasang Selenium:

pip install selenium

Muat turun WebDriver: Pastikan anda mempunyai WebDriver yang betul untuk penyemak imbas anda (cth, ChromeDriver untuk Google Chrome).

Menavigasi ke Halaman Web

Untuk memulakan, kita perlu menavigasi ke halaman web. Untuk contoh ini, kami akan menggunakan YouTube.

from selenium import webdriver

# Initialize WebDriver
driver = webdriver.Chrome(executable_path='/path/to/chromedriver')

# Navigate to YouTube
driver.get('https://www.youtube.com')

Berinteraksi dengan Objek pada Halaman

Mencari dan Mengklik Butang

Satu tugas biasa dalam automasi web ialah mengklik butang. Begini cara anda boleh mencari butang dan klik padanya:

# Find the sign-in button by its XPath
sign_in_button = driver.find_element_by_xpath('//*[@id="buttons"]/ytd-button-renderer/a')

# Click the button
sign_in_button.click()

Mengisi Borang

Seterusnya, mari kita mengisi borang, seperti memasukkan nama pengguna dalam borang log masuk:

# Find the username input field
username_field = driver.find_element_by_xpath('//*[@id="identifierId"]')

# Enter text into the username field
username_field.send_keys('your_username')

# Find and click the next button
next_button = driver.find_element_by_xpath('//*[@id="identifierNext"]/div/button')
next_button.click()

Mengekstrak Teks dan Atribut

Selenium membolehkan anda mengekstrak teks dan atribut daripada elemen web. Ini boleh berguna untuk pelbagai tugas, seperti mengikis data.

# Find a video title
video_title = driver.find_element_by_xpath('//*[@id="video-title"]')

# Extract and print the text
print(video_title.text)

# Extract and print an attribute
print(video_title.get_attribute('href'))

Menatal Halaman

Kadangkala, anda perlu menatal halaman untuk mengakses elemen yang tidak dapat dilihat dengan serta-merta.

from selenium.webdriver.common.keys import Keys

# Scroll down the page
html = driver.find_element_by_tag_name('html')
html.send_keys(Keys.PAGE_DOWN)

Bekerja dengan Pelbagai Elemen

Jika anda perlu berinteraksi dengan berbilang elemen, seperti senarai video, anda boleh menggunakan gelung:

# Find all video titles on the page
video_titles = driver.find_elements_by_xpath('//*[@id="video-title"]')

# Print the titles of all videos
for title in video_titles:
    print(title.text)

Jadual untuk Pemahaman yang Lebih Baik

Untuk menggambarkan pengekstrakan data dengan lebih baik, mari gunakan format jadual.

TugasanCoretan Kod
Navigasi ke YouTubedriver.get('https://www.youtube.com')
Butang Carisign_in_button = driver.find_element_by_xpath('//*[@id="buttons"]/ytd-button-renderer/a')
Klik Butangsign_in_button.click()
Isi Borangusername_field.send_keys('your_username')
Ekstrak Teksvideo_title.text
Ekstrak Atributvideo_title.get_attribute('href')
Tatal Halamanhtml.send_keys(Keys.PAGE_DOWN)
Pelbagai Elemenvideo_titles = driver.find_elements_by_xpath('//*[@id="video-title"]')

Kesimpulan

Menggunakan Selenium dengan Python untuk automasi web boleh menyelaraskan tugas dengan ketara seperti mengisi borang dan berinteraksi dengan elemen web. Panduan ini merangkumi asas menyediakan Selenium, menavigasi halaman web, mengklik butang, mengisi borang, mengekstrak data dan menatal halaman. Dengan menguasai teknik ini, anda boleh mengautomasikan pelbagai interaksi web, meningkatkan produktiviti dan kecekapan.

Komen (0)

Tiada ulasan di sini lagi, anda boleh menjadi yang pertama!

Tinggalkan Balasan

Alamat e-mel anda tidak akan disiarkan. Medan diperlukan ditanda dengan *


Pilih dan Beli Proksi

Proksi Pusat Data

Proksi Berputar

Proksi UDP

Dipercayai Oleh 10000+ Pelanggan Seluruh Dunia

Pelanggan Proksi
Pelanggan Proksi
Aliran Pelanggan Proksi.ai
Pelanggan Proksi
Pelanggan Proksi
Pelanggan Proksi