【uiautomation】微信好友列表获取(存储到txt中)
微信好友列表获取和存储
本文将介绍如何使用UI Automation技术从微信应用中获取好友列表并存储到txt文件中。
前提条件* 微信应用已安装在您的设备上* 您有一个能够运行Python脚本的环境(例如PyCharm或Visual Studio Code)
* UI Automation库(`pyuiautomation`)已安装 步骤一:获取微信应用窗口句柄首先,我们需要获取微信应用的窗口句柄。我们可以使用UI Automation库中的 `WindowFromPoint()`函数来实现这一点。
```pythonimport pyuiautomation 获取当前屏幕分辨率screen_resolution = (1920,1080)
定位微信应用窗口wechat_window = pyuiautomation.WindowFromPoint((screen_resolution[0] /2, screen_resolution[1] /2))
if wechat_window is not None:
print("微信应用窗口找到")
else:
print("未找到微信应用窗口")
```
步骤二:获取好友列表控件在微信应用中,好友列表是由一个名为`ContactList`的控件组成的。我们可以使用UI Automation库中的 `GetChildControl()`函数来获取这个控件。
```python 获取好友列表控件contact_list = wechat_window.GetChildControl("ContactList")
if contact_list is not None:
print("好友列表控件找到")
else:
print("未找到好友列表控件")
```
步骤三:获取好友信息好友列表中每个联系人的信息都是由一个名为`ContactItem`的控件组成的。我们可以使用UI Automation库中的 `GetChildControl()`函数来获取这个控件。
```python 获取好友列表中的所有联系人contacts = contact_list.GetChildren()
初始化txt文件with open("friends.txt", "w") as f:
pass 遍历每个联系人并写入txt文件for i, contact in enumerate(contacts):
获取联系人的名称和备注 name = contact.GetPropertyValue("Name")
remark = contact.GetPropertyValue("Remark")
写入txt文件 with open("friends.txt", "a") as f:
f.write(f"好友{i+1}:{name}
")
if remark is not None and remark != "":
f.write(f"备注:{remark}
")
```
步骤四:运行脚本最后,我们需要运行这个脚本来获取好友列表并存储到txt文件中。
```python 运行脚本if __name__ == "__main__":
获取微信应用窗口句柄 wechat_window = pyuiautomation.WindowFromPoint((screen_resolution[0] /2, screen_resolution[1] /2))
if wechat_window is not None:
print("微信应用窗口找到")
else:
print("未找到微信应用窗口")
获取好友列表控件 contact_list = wechat_window.GetChildControl("ContactList")
if contact_list is not None:
print("好友列表控件找到")
else:
print("未找到好友列表控件")
获取好友信息 contacts = contact_list.GetChildren()
with open("friends.txt", "w") as f:
pass for i, contact in enumerate(contacts):
name = contact.GetPropertyValue("Name")
remark = contact.GetPropertyValue("Remark")
with open("friends.txt", "a") as f:
f.write(f"好友{i+1}:{name}
")
if remark is not None and remark != "":
f.write(f"备注:{remark}
")
```
结论通过以上步骤,我们可以使用UI Automation技术从微信应用中获取好友列表并存储到txt文件中。