简述四大行业的网站推广方式,游戏开发培训机构,福建网站建设开发,成都做企业网站在遇到一些特殊的情况的时候#xff0c;selenium框架已经无法满足我们的需求了#xff0c;比如#xff1a;网站做了自动化屏蔽的时候#xff0c;会检测到selenium并对操作者进行屏蔽。 经过测试发现pywinauto属于电脑的模拟#xff0c;当然还有其他的库#xff0c;不过我… 在遇到一些特殊的情况的时候selenium框架已经无法满足我们的需求了比如网站做了自动化屏蔽的时候会检测到selenium并对操作者进行屏蔽。 经过测试发现pywinauto属于电脑的模拟当然还有其他的库不过我这里使用的是pywinauto感觉还是比较好用的 由于一些原因我的电脑没法完整的安装一个可以检测控件的工具名字记不清了只要搜索一下pywinauto或者另外一个依赖控件的库就可以找到那个工具
所以我采用了下面代码获取鼠标控件的位置
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import time
import pyautogui
import win32api
import win32con
from ctypes import windllwidth, height pyautogui.size()
print(屏幕分辨率, width, height)
# 获取鼠标实时位置
for _ in range(3):x, y pyautogui.position()print(当前鼠标点击位置, x, y)time.sleep(1)# 鼠标移动到制定位置
windll.user32.SetCursorPos(22, 250)
# 鼠标点击
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 22, 250)
time.sleep(0.05)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 22, 250)x, y pyautogui.position()
print(当前鼠标点击位置, x, y)然后通过上面的代码可以获取光标然后通过pywinauto进行自动化操作 补充一个示例
import time
import pywinauto
from pywinauto.application import Application# 打开windows上安装的谷歌浏览器其他浏览器一样OK
app_test Application(backenduia).start(rC:\Program Files\Google\Chrome\Application\chrome.exe url网址需要更改 --ico1)
# url网址需要更改
time.sleep(5)i 26
while(i0):pywinauto.mouse.click(coords(151,224)) # 域名选择time.sleep(3)pywinauto.mouse.click(coords(167,263)) # 确定选择time.sleep(3)pywinauto.mouse.click(coords(51,908)) # 点击设置 958time.sleep(3)pywinauto.mouse.click(coords(1505,909)) # 点击移除time.sleep(3)pywinauto.mouse.click(coords(1092,668)) # 确认移除time.sleep(3)i i - 1补充一个在光标位置录入内容的代码
pywinauto.keyboard.send_keys(内容,pause0.0001) # pause是键盘模拟每个字符录入时间长短说明一下这里的send_keys是模拟键盘还有一个是send_text还是key_text的记不清了那个是直接录入没有模拟操作但是那个是另外一个库的那个库好像有些限制比如需要获取控件标题啦id啦等等要比较精确所以我这里使用了pywinauto