प्रौद्योगिकी साझेदारी

सेलेनियम सामान्य विधियाँ

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

ब्राउजर् उद्घाटयन्तु

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Edge()

url = "..."
driver.get(url)
driver.maximize_window()

# 隐式等待 每隔半秒钟查询一次
driver.implicitly_wait(10)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

तत्त्वानि कथं स्थापयितव्यानि

element = driver.find_element(By.NAME, 'name_attribute')
element = driver.find_element(By.ID, 'id_attribute')
element = driver.find_element(By.CSS_SELECTOR, 'css_selector')
element = driver.find_element(By.XPATH, 'xpath_selector')
element = driver.find_element(By.CLASS_NAME, 'class_attribute')
element = driver.find_element(By.LINK_TEXT, 'link_text')
element = driver.find_element(By.PARTIAL_LINK_TEXT, 'partial_link_text')
element = driver.find_element(By.TAG_NAME, 'tag_name')

elements = driver.find_elements()
# find_element()选取符合标签的第一个元素,如果没有则抛出异常
# find_elements()选取符合标签的所有元素,如果没有则返回一个空列表
# webDriver使用find时,是在整个web页面中查找
# webElement使用find时,是在该element下查找

for element in elements:
    print(element.text)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

तत्त्वानां परिवर्तनं कथं करणीयम्

# 向某个元素输入内容
element.send_keys("admin")

# 清空某个元素的文本
element.clear()

# 某个元素全部的html内容
element.get_attribute("outerHTML")
# 某个元素内部的html
element.get_attribute("innerHTML")
# 获取输入框内的内容
element.get_attribute("value")
# 清空输入框
element.click()
# 获取元素显示在页面上的内容
element.text
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

ब्राउजर् कथं संचालितव्यम्

# 切换浏览器页面的操作范围
driver.switch_to.frame('frame_selector')
# 切换浏览器窗口
for handle in driver.window_handles:
    driver.switch_to.window(handle)
    if 'baidu' in driver.title:
        break

# 关闭浏览器驱动
driver.quit()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

चयनपेटिकायाः ​​संचालनं कथं करणीयम्

# select 选择框

from selenium.webdriver.support.ui import Select

select = Select(driver.find_element(By.ID, "ss_multi"))

select.deselect_all()

select.select_by_visible_text("text")
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

मूषकस्य संचालनं कथं करणीयम्

# 鼠标移动到某个element上

from selenium.webdriver.common.action_chains import ActionChains

ac = ActionChains(driver)

ac.move_to_element(driver.find_element(...)).perform()
ac.move_by_offset()

# 弹出框
# 点ok
driver.switch_to.alert.accept()
# 点cancel
driver.switch_to.alert.dismiss()
# 弹出框里的文本
driver.switch_to.alert.text
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16