You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python报错SyntaxError: invalid syntax,Selenium代码语法错误找不到原因

你遇到的SyntaxError: invalid syntax属于语法层面错误,和Selenium元素定位逻辑无关,优先排查以下问题:

  • 检查job_lists = wd.find_element(By.CLASS_NAME,"jobs-search__results-list")这一行的行首空白:删除所有原有缩进后重新输入半角空格,这行属于while循环外的代码,要和while关键字顶格对齐,不能有多余缩进,也不能用中文全角空格作为缩进字符。
  • 检查整行代码的所有符号:引号、等号、括号都必须使用半角英文格式,误输入中文全角符号会被Python识别为非法字符,直接触发语法错误。
  • 检查上一行time.sleep(5)的缩进:这行在except块内,需要和pass保持相同缩进层级,不能出现缩进错位。

解决完语法错误后,你的代码还存在以下逻辑问题需要调整,避免后续运行报错:

  • 当前except仅捕获ValueError,但点击加载按钮找不到元素时Selenium抛出的是NoSuchElementException,不会被你写的异常捕获,会直接中断运行,建议调整异常捕获逻辑:
from selenium.common.exceptions import NoSuchElementException

# 原有try块不变,把except部分替换为下方代码
except NoSuchElementException:
    time.sleep(5)

这里pass可以直接删掉,你已经写了sleep逻辑不需要空语句占位。

  • 最好在获取元素前增加显式等待,避免页面还没加载完成就找元素触发运行时报错,比如获取job_lists前加一行等待逻辑:
WebDriverWait(wd, 10).until(EC.presence_of_element_located((By.CLASS_NAME, "jobs-search__results-list")))

内容的提问来源于stack exchange,提问作者federico papa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 15:18:01