|
发表于 2023-5-10 23:56:53
|
显示全部楼层
首先,你需要定位到含有"冰河骑士"的元素,然后找到它的同级元素中包含攻击onclick事件的元素。这里我假设这两个元素都是dt元素的子元素。
- from selenium import webdriver
- from selenium.webdriver.common.by import By
- from selenium.webdriver.support.ui import WebDriverWait
- from selenium.webdriver.support import expected_conditions as EC
- # 启动浏览器
- driver = webdriver.Chrome()
- # 打开网页
- driver.get("你的网页地址") # 请替换成你的网页地址
- # 使用Explicit Wait等待页面完全加载
- wait = WebDriverWait(driver, 10)
- # 定位到含有"冰河骑士"的元素
- element = wait.until(EC.presence_of_element_located((By.XPATH, "//font[contains(text(), '冰河骑士')]")))
- # 如果找到了"冰河骑士",则找到它的同级元素中的攻击按钮
- if element:
- attack_element = element.find_element_by_xpath("./following-sibling::a[@title='攻击']")
- # 如果找到了攻击按钮,则执行其onclick事件
- if attack_element:
- driver.execute_script(attack_element.get_attribute('onclick'))
- # 关闭浏览器
- driver.quit()
复制代码
这段代码首先会等待页面加载,然后找到含有"冰河骑士"的字样的元素。如果找到了这个元素,它会寻找这个元素的同级元素中含有"攻击"标题的链接,并执行其onclick事件。
请注意,这段代码需要在你的实际环境中进行适当的调整,因为我无法知道你的网页的实际结构。此外,你需要确保你的浏览器驱动(例如ChromeDriver)的版本和你的浏览器版本匹配。 |
|