Selenium出现invalid character in identifier错误及驱动配置与代码运行问题咨询
问题排查与解决方法
嘿,我一眼就看到你这个「invalid character in identifier」错误的核心原因了——代码里用了中文引号!看你写的browser.get(‘https://www.facebook.com/'),这里的左引号是中文的「‘」,不是Python能识别的英文单引号「'」,Python解释器会把这种非ASCII的标点当成无效字符,直接抛出错误。
错误原因拆解
- 中文标点(比如中文引号、中文逗号、中文括号)完全不符合Python的语法规范,属于非法标识符,解释器根本认不出来,这是当前报错的直接诱因。
- 另外还有个小矛盾:你提到已经安装了ChromeDriver,但代码里调用的是
webdriver.Firefox(),要是你没配置geckodriver的话,这行代码后续也会报错,不过先解决引号的问题再说。
解决方法
- 替换所有中文标点为英文标点:把代码里的中文引号
‘’改成英文单引号''或者双引号"",修正后的这行代码应该是:browser.get('https://www.facebook.com/') - 匹配驱动与浏览器:
- 如果你想用Chrome浏览器,把
webdriver.Firefox()改成webdriver.Chrome(),确保ChromeDriver的路径已经加到系统环境变量里,或者直接在代码里指定驱动路径:browser = webdriver.Chrome(executable_path='你本地chromedriver的完整路径') - 要是坚持用Firefox,得下载和你Firefox版本匹配的geckodriver,同样把它的路径配置到环境变量,或者在代码里指定路径。
- 如果你想用Chrome浏览器,把
代码配置与运行要点确认
- 驱动版本必须对应:不管是ChromeDriver还是geckodriver,版本一定要和你本地安装的浏览器主版本一致,比如Chrome是119.x,ChromeDriver就得用119.x的版本,版本不匹配会直接导致浏览器启动失败。
- 环境变量配置到位:把驱动程序所在的文件夹路径添加到系统的
PATH环境变量中,这样Python就能自动找到驱动,不用每次在代码里写冗长的路径。 - 代码细节优化:最后关闭浏览器时,
browser.close()只会关闭当前窗口,要是想彻底结束浏览器进程,建议用browser.quit(),避免残留后台进程。
修正后的完整代码示例(以Chrome为例):
from time import sleep from selenium import webdriver # 使用Chrome浏览器,前提是ChromeDriver已配置好 browser = webdriver.Chrome() browser.get('https://www.facebook.com/') sleep(5) browser.quit()
内容的提问来源于stack exchange,提问作者Mohit Chouksey




