python中使用selenium获取窗口句柄时,window_handles取值出错

python中使用selenium获取窗口句柄时,window_handles取值出错,第1张

Form formPreview = new Form();

public Leaf(string name) : base(name) { }

public override void Add(Component c)

{

ConsoleWriteLine("Cannot add to a leaf");

}

public override void Remove(Component c)

{

ConsoleWriteLine("Cannot remove to a leaf");

}

public override void Display(int depth)

{

ConsoleWriteLine(new string('-',depth)+name);

}

}

看到句柄数这几个字,我猜可能是要windows下运行的?

可能答非所问,不过在linux下最好的用的莫过于psutil了,你可以通过进程名或pid很好的监控任意进程的系统占用情况,甚至进程建立的每个连接都能获取到

>>> import psutil

>>> psutilpids()

[1, 2, 3, 4, 5, 6, 7, 46, 48, 50, 51, 178, 182, 222, 223, 224,

 268, 1215, 1216, 1220, 1221, 1243, 1244, 1301, 1601, 2237, 2355,

 2637, 2774, 3932, 4176, 4177, 4185, 4187, 4189, 4225, 4243, 4245,

 4263, 4282, 4306, 4311, 4312, 4313, 4314, 4337, 4339, 4357, 4358,

 4363, 4383, 4395, 4408, 4433, 4443, 4445, 4446, 5167, 5234, 5235,

 5252, 5318, 5424, 5644, 6987, 7054, 7055, 7071]

>>>

>>> p = psutilProcess(7055)

>>> pname()

'python'

>>> pexe()

'/usr/bin/python'

>>> pcwd()

'/home/giampaolo'

>>> pcmdline()

['/usr/bin/python', 'mainpy']

>>>

>>> pstatus()

'running'

>>> pcpu_percent(interval=10)

121

>>> psutilnet_io_counters(pernic=True)

{'eth0': netio(bytes_sent=485291293, bytes_recv=6004858642, packets_sent=3251564, packets_recv=4787798, errin=0, errout=0, dropin=0, dropout=0),

 'lo': netio(bytes_sent=2838627, bytes_recv=2838627, packets_sent=30567, packets_recv=30567, errin=0, errout=0, dropin=0, dropout=0)}

从官方文档上copy了一部分出来,有没有碉堡了的感觉,快去翻一下文档吧,非常容易使用

算办公自动化的一个应用。

先获取窗口的句柄 >>遍历窗口下的所有控件>>通过输入框的特征,比如标识名称,找到对应的输入框>> *** 作输入框属性>>处理获取新字符串>>通过sendpost返回给另一个输入框

subprocess包专门搞进程

如果你用这个模块触发一个新进程,它会拿到一个句柄,你可以通过句柄查看那个进程的状态,发送信号量,标准输入输出

博客比较多,需要自己尝试一下

可能是与串口软件冲突,解决方法如下:

1、添加控件,通过菜单Project→AddtoProject→ComponentsandControl插入即可,再将该控件从工具箱中拉到对话框中。

2、在窗口上添加一个串口控件,随便放一个位置,此控件是不可见的。

3、为控件添加变量m_com为后面 *** 作做准备,如果不添加变量也可以用GetDlgItem函数获取句柄进行 *** 作。

4、打开串口即可。

1、问题发生描述:

从一个页面进行点击等 *** 作,页面跳转到第二个页面,对第二个页面中的元素,采取任何措施定位都报错,问题报错点如下:

2、出现问题的原因:

窗口句柄还停留在上一个页面,对于当前新d出的页面还没有定位,因此新页面的任何元素都定位不到

3、解决方案:

在新页面 *** 作元素之前,需添加句柄 *** 作,方式如下:

1、使用drivercurrent_window_handle #获取当前窗口句柄,添加此方法,仍报相同的错误,因此不能采用这种方式进行解决问题

2、使用driverswitch_to_window(driverwindow_handles[1]),或者 driverswitch_to_window(selfdriverwindow_handles[-1]) ,两种方式中任选一种即可找到对应的元素

添加后的代码如下:

每天记录进步一点点

以上就是关于python中使用selenium获取窗口句柄时,window_handles取值出错全部的内容,包括:python中使用selenium获取窗口句柄时,window_handles取值出错、怎么用python查询出 进程 CPU使用率 内存使用 句柄数、python如何抓取当前运行软件的输入框等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9565672.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存