PyAutoGUI模块是一个图形用户界面自动化工具,通过屏幕的xy坐标系统确定目标位置,控制鼠标和键盘发送虚拟击键和鼠标点击,完成点击按钮,填写表单等操作,常用方法如下所示:
使用之前需要安装该模块:
pip install pyautogui
例如:在http://www.jpress.io/user/register页面上有一个勾选框,通过id去查找,点击不上,点击不上的原因有:因为checkbox不规范,或者反爬虫代码等多种原因。使用click()方法即可解决。代码如下:
import pyautogui
from selenium import webdriver
from time import sleep
class TestCase(object):
def __init__(self):
self.driver = webdriver.Chrome()
self.driver.get('http://www.jpress.io/user/register')
self.driver.maximize_window()
def test(self):
ele=self.driver.find_element_by_id('agree')
rect =ele.rect #rect是一个字典
pyautogui.click(rect['x']+20, rect['y']+130) #由于获取的坐标是一个组件左顶点的坐标,因此x,y应向右向下加点像素
sleep(5)
if __name__ == '__main__':
case = TestCase()
case.test()