写Selenium代码时一些技巧
本文地址: https://www.cnblogs.com/hchengmx/p/10880002.html
1. Chrome插件之"CSS Selector Helper for Chrome"。
对于复杂网页。
这个插件可以显示出当前定位元素,它的和它的所有祖先的Css属性,选中属性可以查看,"要是以当前选择的为CssSelector,当前页面可以匹配多少个元素"。
所以找一个元素分为这样几个步骤:
- 在chrome下,使用 Shift + Ctrl + C,并用鼠标移动,找到需要定位的元素。
- F12打开DevTools;
- 鼠标点击当前元素的html代码;
- 点击Get Selector;
- 选择当前结点唯一属性,或者是易读易理解的属性,要是无唯一属性,找父节点的唯一属性,用祖先子类选择器定位元素
- Selector to Clipboard;
2. 定位会自动消失的元素;
在写等待的时候,有些元素会自动消失,在不同的网络条件下可能加载速度不一样,所以就要等待这个元素加载成功。可以用Chrome的DevTools,当等到需要等的元素的时候,就停止网页加载。
3. Chrome的headless模式和最大化窗口
public ChromeDriverFactory()
{
var chromeOptions = new ChromeOptions();
chromeOptions.AddArguments(new string[]{
"--window-size=1920,1080", //headless默认为这么大,这样就可以截屏就是整个页面;
"--headless",
//"start-maximized", //要是不想用headless,就注释掉上面两行,不注释这一行
"–disable-gpu",
"–disable-dev-shm-usage",
"–disable-setuid-sandbox",
"–no-first-run",
"–no-sandbox",
"–no-zygote",
"–single-process"
});
this.options = chromeOptions;
}
参考资料:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码