Selenium入门脚本遭遇unicodeescape编码错误求助
解决Selenium ChromeDriver路径的Unicode转义错误
错误原因分析
你的代码出现SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes错误,核心有两个问题:
- 路径格式无效:修改后的路径
r'C\Users\work\Downloads\chromedriver.exe'里,盘符C后面缺少了冒号,这是Windows路径的必要组成部分,属于无效路径。 - 转义字符冲突:Python字符串中单个反斜杠
\是转义字符,\U会被识别为Unicode转义序列的开头,导致解码失败。
正确解决方案
以下几种写法都可以解决问题,任选其一即可:
1. 原始字符串+正确路径(推荐)
在路径前加r前缀表示原始字符串,同时补全盘符后的冒号:
from selenium import webdriver driver = webdriver.Chrome(executable_path=r'C:\Users\work\Downloads\chromedriver.exe') driver.get("http://google.com")
2. 双反斜杠转义
用双反斜杠\\替代单个反斜杠,避免转义冲突:
from selenium import webdriver driver = webdriver.Chrome(executable_path='C:\\Users\\work\\Downloads\\chromedriver.exe') driver.get("http://google.com")
3. 正斜杠替代反斜杠
Python支持在Windows系统中使用正斜杠/作为路径分隔符,无需处理转义:
from selenium import webdriver driver = webdriver.Chrome(executable_path='C:/Users/work/Downloads/chromedriver.exe') driver.get("http://google.com")
4. Selenium 4.x+ 无需手动指定路径(更简便)
如果你的Selenium版本是4.0及以上,可以借助内置的Selenium Manager自动管理ChromeDriver,无需手动指定路径:
from selenium import webdriver driver = webdriver.Chrome() driver.get("http://google.com")
内容的提问来源于stack exchange,提问作者lhp
相关产品推荐
相关产品推荐

