Edge环境下开发Twitter Scraper的三类Selenium相关问题求助
问题解决方案
1. 代码无语法高亮问题
- 先确认是否正确导入对应模块:要让
.webdriver.common.keys被编辑器识别,必须在代码开头添加:from selenium.webdriver.common.keys import Keys - 检查编辑器的Python解释器是否关联你的Anaconda环境(比如VS Code中按
Ctrl+Shift+P选择"Python: Select Interpreter",选中Anaconda对应的Python版本)。 - 确保编辑器安装了官方Python插件(比如VS Code的Python插件),插件会自动识别Selenium的API并提供语法高亮。
2. Selenium 4仍出现弃用警告问题
你使用的msedge.selenium_tools是Selenium 3时期的Edge驱动工具,Selenium 4已经原生支持Edge浏览器,无需依赖这个库,因此会触发弃用警告。替换为Selenium 4的官方初始化方式:
- 卸载旧的
msedge.selenium_tools:pip uninstall msedge-selenium-tools - 用Selenium 4自带的Edge驱动初始化:
from selenium import webdriver # 若EdgeDriver在系统PATH中,直接初始化 driver = webdriver.Edge() # 若EdgeDriver不在PATH,指定路径 # from selenium.webdriver.edge.service import Service # service = Service(executable_path="path/to/msedgedriver.exe") # driver = webdriver.Edge(service=service)
3. XPath定位元素及AttributeError问题
Selenium 4已移除find_element_by_xpath()这类旧方法,必须使用新的定位方式,步骤如下:
- 导入
By模块:from selenium.webdriver.common.by import By - 使用新的XPath定位语法:
# 替换原有的 driver.find_element_by_xpath("你的XPath") element = driver.find_element(By.XPATH, "你的XPath表达式")
- 无需额外安装库,也不用更新Anaconda Navigator,只要确保Selenium版本为4.x,且代码按上述方式修改即可。
内容的提问来源于stack exchange,提问作者Xippio
相关产品推荐
相关产品推荐

