当前位置:网站首页>Uploading attachments using Win32 in Web Automation
Uploading attachments using Win32 in Web Automation
2022-07-02 06:33:00 【bthtth】
One Scenario as follows
In baidu home page ," Search by image " when , Need to upload pictures .

Two Tools and environments
1\ Need to install winspy This tool 
2\ Need to install win32 library pip install pywin32
winspy Usage of
location
(1) Call the file upload window 
(2) open winspy, single click " Aimed at " Shape button , Don't let go . Drag the button to the window element you want to locate , such as " file name " Input fields and " open " Button 
(3) And then in winspy Fetch element class and Element text 
If there is no text content ,cation It's empty
(4) View the hierarchical path of the element .
stay winspy Panel click "more"( Some versions are tree),
Click on "locate", Will show "edit" Path . Handle in turn \classname\ Text 
You can see "edit" Altogether 4 Level path , And you can get the handle of each level of path \ Classes and text 
Use pywin32 Finish uploading files
win32gui.FindWindow(IpClassName,IpWindowName)
ipclassname Elemental class ipwindowname caption
win32gui.FindWindowEX(hwndparent=0, hwndchildafter=0,ipszclass=None,ipszwindow=None)
Search for forms whose class name matches the text
hwndparent If not 0, Then the search handle is hwndparent Form
hwndchildafter If not 0, According to z-index Search in the order of hwndchildafter Subform of , Otherwise, search from the first subform
ipszclass class The name of
ipszwindow Form caption
win32gui.sendMessage(hwnd,msg,Wparame,Iparame)
hwnd: Handle to the form that accepts the message
msg: news , Pre existing windows Defined commands
wparame and iparame Unclear , For these two parameters, please refer to this article
wparame and iparame The explanation of
import win32gui
import win32con
# Get top-level window , Pass in the top-level window class and caption
dialog = win32gui.FindWindow("#32770"," Open file ")
# Get the secondary window
# Pass in the parent window ,0, window class and caption, If caption Use if it is empty None
ComboBoxEx32 = win32gui.FindWindowEx(dialog,0,"ComboBoxEx32",None)
# Get the three-level window
ComboBox = win32gui.FindWindowEx(ComboBoxEx32,0,"ComboBox",None)
# Get level 4 elements
edit = win32gui.FindWindowEx(ComboBox,0,"Edit",None)
# obtain " open " Button
button = win32gui.FindWindowEX(dialog,0,"Button"," open (&O)")
# " file name " Enter the file path
win32gui.sendmessage(edit,win32con.WM_SETTEXT,None," File path ")
# Click on " open "
win32gui.sendmessage(dialog,win32con.WM_CoMMANd,1,button)
边栏推荐
猜你喜欢

unittest.TextTestRunner不生成txt测试报告

Decryption skills of encrypted compressed files

深入学习JVM底层(二):HotSpot虚拟机对象

稀疏数组(非线性结构)

Redis——热点key问题

Pbootcms collection and warehousing tutorial quick collection release

日期时间API详解

New version of dedecms collection and release plug-in tutorial tool

Ruijie ebgp configuration case

Summary of advertisement business bug replay
随机推荐
自学table au
Summary of WLAN related knowledge points
记录一次RDS故障排除--RDS容量徒增
日期时间API详解
深入了解JUC并发(二)并发理论
Warp shuffle in CUDA
Tensorrt command line program
Idea announced a new default UI, which is too refreshing (including the application link)
【每日一题】写一个函数,判断一个字符串是否为另外一个字符串旋转之后的字符串。
Dynamic global memory allocation and operation in CUDA
js中正则表达式的使用
New version of dedecms collection and release plug-in tutorial tool
深入了解JUC并发(一)什么是JUC
Linked list (linear structure)
CUDA中的Warp Shuffle
栈(线性结构)
利用NVIDIA GPU将Minecraft场景渲染成真实场景
selenium的web自动化中常用的js-修改元素属性翻页
Detailed definition of tensorrt data format
介绍两款代码自动生成器,帮助提升工作效率