Python Selenium报错:Statements must be separated by newlines or semicolons
问题修复方案
你的代码存在几个关键问题,直接导致了语法错误:
1. 混用Java与Python语法
Python是动态类型语言,不需要像Java那样声明变量类型(WebElement是Java Selenium的写法),直接赋值即可。
2. Selenium方法名错误
Python Selenium中查找单个元素的方法是find_element(),而非Java里的findElement()。
3. XPath语法错误
你的XPath表达式//[@id='rbAfter2006']/ul缺少元素匹配符,需在[@id]前加上*(表示匹配任意类型元素),正确写法为//*[@id='rbAfter2006']/ul。
4. 多行语句格式问题
若要将赋值语句拆分为多行,Python中可通过括号包裹表达式来避免语法错误。
修正后的代码
from selenium import webdriver from selenium.webdriver.common.by import By chrome = webdriver.Chrome() chrome.get("https://www.hkexnews.hk/") # 查找单个元素 element = chrome.find_element(By.XPATH, "//*[@id='rbAfter2006']/ul") # 若需查找多个元素,使用find_elements() # elements = chrome.find_elements(By.XPATH, "//*[@id='rbAfter2006']/ul")
内容的提问来源于stack exchange,提问作者Po Lam
相关产品推荐
相关产品推荐

