练习利用Jupyter使用selenium【疑问未解决版】

目录

1、打开Jupyter后,检查是否安装了selenium

命令:

python 复制代码
pip show selenium

结果:

【在 Jupyter Notebook 中,当你安装或更新了某些 Python 包后,系统会提示你重启内核,这样新的包或更新后的包才能被正确加载并使用。】

2、根据提示重启内核

3、【疑问1】我重启了内核之后还是提示这句话

提示:Note: you may need to restart the kernel to use updated packages.

我:fine~~,你提示就提示吧,我能拿你怎么办呢!!!

4、执行简单的打开网页的代码【结果又报错】

python 复制代码
from selenium import webdriver
# from selenium.webdriver.edge.service import Service
# 创建一个WebDriver类型的实例对象,运行浏览器驱动,之后控制浏览器
# wd = webdriver.Edge(service = Service(r'D:\edgedriver_win64\msedgedriver.exe'))
wd = webdriver.Edge()
# 在浏览器中打开某网址页面
wd.get('https://www.baidu.com')

结果:edge浏览器成功打开了百度的网页,但是jupyter提示:

bash 复制代码
DevTools listening on ws://127.0.0.1:31061/devtools/browser/970d1937-368e-423a-bae8-af59c93a6da0
[6804:19916:0320/162225.845:ERROR:edge_qqbrowser_importer_utils_win.cc(158)] QQBrowser user data path not found.
[20628:17792:0320/162226.091:ERROR:ssl_client_socket_impl.cc(891)] handshake failed; returned -1, SSL error code 1, net_error -101
[20628:17792:0320/162226.150:ERROR:ssl_client_socket_impl.cc(891)] handshake failed; returned -1, SSL error code 1, net_error -101
[0x7FF8A495B840] ANOMALY: meaningless REX prefix used
[0x7FF8A4B5C590] ANOMALY: meaningless REX prefix used
[0x7FF8A4B5E810] ANOMALY: meaningless REX prefix used
[0x7FF8A495B840] ANOMALY: meaningless REX prefix used
[0x7FF8A4B5C590] ANOMALY: meaningless REX prefix used
[0x7FF8A4962E30] ANOMALY: meaningless REX prefix used
[0x7FF8A4B5E810] ANOMALY: meaningless REX prefix used
[0x7FF8A4962E30] ANOMALY: meaningless REX prefix used

【查了一圈也不是很懂为什么会这样,明明我的浏览器版本和驱动器版本已经一样了,show time~】

Edge浏览器驱动器下载地址:驱动器下载地址

5、根据id找到元素,进行操作

python 复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
# from selenium.webdriver.edge.service import Service
# wd = webdriver.Edge(service = Service(r'D:\edgedriver_win64\msedgedriver.exe'))

# 创建一个WebDriver类型的实例对象,运行浏览器驱动,之后控制浏览器
wd = webdriver.Edge()
# 在浏览器中打开某网址页面
wd.get('https://www.baidu.com')

# 创建一个WebElement对象,定位web的某一元素,之后对这个元素进行操作
element = wd.find_element(By.ID,'kw')
# 输入文字并回车
element.send_keys('汪苏泷\n')

或者是:

python 复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
# from selenium.webdriver.edge.service import Service
# wd = webdriver.Edge(service = Service(r'D:\edgedriver_win64\msedgedriver.exe'))

# 创建一个WebDriver类型的实例对象,运行浏览器驱动,之后控制浏览器
wd = webdriver.Edge()
# 在浏览器中打开某网址页面
wd.get('https://www.baidu.com')

# 创建一个WebElement对象,定位web的某一元素,之后对这个元素进行操作
element = wd.find_element(By.ID,'kw')
# 输入文字
element.send_keys('汪苏泷')
# 百度一下
element = wd.find_element(By.ID,'su')
element.click()

写在最后:

web自动化测试(使用selenium时),最重要也是最难的就是定位元素,定位到元素之后,就可以进行"获取元素的数据"、"输入数据"、"点击"等操作了。

相关推荐
Xiu Yan4 天前
Python 数据分析:Pandas DataFrame 零基础入门教程
python·jupyter·pycharm·numpy·pandas
2501_915909064 天前
移动端开发工具链怎么组合比较好,iOS、Android、跨端三套配置方案
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
把头塞进显示器4 天前
电商平台-测试报告
python·selenium·pytest
2501_915918414 天前
iOS编程用什么软件好?主流工具Xcode、AppCode、CodeRunner与新兴快蝎对比
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
Xiu Yan5 天前
Python 数据分析:Pandas Series 零基础入门教程
python·jupyter·pycharm·numpy·pandas
滕州市燕猫虎计算机科技工作室个体工商户5 天前
IDEA:Command line is too long
java·ide·intellij-idea
AI编码进化论7 天前
云IDE介绍:环境模板化、Agent上云,云IDE该怎么选
开发语言·ide·人工智能·团队开发·ai编程
troy1287 天前
Python 基础语法(九):Django/Flask/FastAPI 三大 Web 框架详细对比解析
python·jupyter·django·flask·github·fastapi
我要见SA姐17 天前
DeepSeek Harness 开源贡献手记:从 Issue 到 Merge 的完整旅程
ide·vscode·python·自动化·编辑器
2501_915918418 天前
使用 VS Code 写 Swift 做 iOS 开发,插件能实现哪些功能,还有哪些短板
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程