python自动化框架:pywinauto实现博客之星自动化评论

本文介绍了如何使用Python的pywinauto库进行自动化测试,模拟手动操作进行博客评论。通过键盘和鼠标模拟,实现登录、浏览和评论等功能,以避免爬虫的弊端。文中给出了关键代码示例,包括打开新页面、滚动、点击和输入评论。
摘要由CSDN通过智能技术生成

场景:
2021年度博客之星开始评选了,又是各路豪杰实践自身技术能力的时刻,平时都是写文章维护粉丝好友度,现在才是实打实的展现技术 😃 本分只是python框架的实践,不建议恶意推广,后果自负。

大部分玩家都采用爬虫的方式: 登录 -> 获取 cookie -> 设置cookie -> 调用评论api,再爬取其他博主的链接进行周而复始。

今天咱不讲爬虫,讲python的自动化测试框架pywinauto如何实现模拟手动操作(相同的还有pyAutoGui这个库),制造一个有血有肉的回复机器,爬虫的方式太暴力了,除了反爬外,还会给官方带来大量垃圾数据,作为一个友好型实践玩家,我们点到为止即可。

除了爬虫跟GUI库,chrome浏览器还可使用驱动的方式(chromedrive)不过这种方式也需要反爬,这里不做介绍了。

如何使用pywinauto

先附上官方文档

在我们的实践中,主要使用到了

import time
from pywinauto import keyboard
from pywinauto import mouse
from pywinauto import Application

keyboard用来模拟键盘输入以及滚动条
mouse用来模拟鼠标点击
application主要用来唤醒浏览器

先附上主要代码

import time
from pywinauto import keyboard
from pywinauto import mouse
from pywinauto import Application

def sendMsg(topicNum):
    print("topicNum"+str(topicNum))

    keyboard.send_keys('^T')
    time.sleep(3)

    keyboard.send_keys("https://bbs.csdn.net/topics/"+str(topicNum))
    keyboard.send_keys('{VK_RETURN}')
    time.sleep(10)


    keyboard.send_keys('{VK_SPACE}')
    time.sleep(3)

    mouse.click(coords=(1180, 1010))
    time.sleep(3)

    keyboard.send_keys('# d求个五星回评 ')
    keyboard.send_keys('{ENTER}')
    keyboard.send_keys("链接直达:[](https://bbs.csdn.net/topics/603958738)")
    keyboard.send_keys('{ENTER}')
    keyboard.send_keys("**私信自动源码**")
    keyboard.send_keys('^{ENTER}')
    time.sleep(3)

    mouse.click(coords=(1180, 200))
    fun(num+1)
    print("end ")

#使用后端方式打开浏览器
app = Application(backend="uia").start("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe")

time.sleep(3)

#开发打开其他博主的链接
sendMsg(topicNum)

topicNum是其他博主的互动区id,这里建议先获取参与这次评选的用户列表,再次提示,我们只做有限的评论,不要随意爬取随意评论给

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值