python鼠标键盘操作(模拟手机抖音、快手浏览)

利用pyautogui实现模拟鼠标键盘的操作

  1. 获取屏幕尺寸
screenWidth, screenHeight = pyautogui.size()
  1. 鼠标点击
pyautogui.click(158,237,button='left')  ####在相应位置点击鼠标左键
  1. 模拟键盘输入
pyautogui.typewrite('Hello world!')  键盘输入
  1. 双击鼠标
pyautogui.doubleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear)#

最后附上利用模拟器在电脑刷抖音、点赞、评论的代码

利用了线程池的方式,可以同时打开多个模拟器进行抖音、快手等的流量

import random
import sys
import threading
import time
from multiprocessing.dummy import Lock, Pool
import pyautogui
import pyperclip


, button='left', duration=0.0, tween=pyautogui.linear)#当前位置点击鼠标
def content_text(t):           #评论的填入内容
    if t==1:
        return 'hello word'        #修改‘’里面的内容即可
    elif t==2:
        return '你好'
    else:
        return '债见'


star_time = time.time()   #记录程序起始运行时间
lock=threading.Lock() #申请一把锁


run_time = 3600             #程序一共运行多少秒
#模拟器屏幕中间点xy,点赞按钮xy,评论按钮xy,文本输入位置xy,消息发送按钮xy, 评论内容
data_list = [
            (228,241, 412,535, 415,592, 144,788, 415,725, 1),       #一行为一个窗口的数据
            (708,237, 895,535, 892,591, 664,783, 897,725, 2)
            ]

def content(xc,yc,xt,yt,num):
    pyautogui.click(xc,yc,button='left') ##评论按钮的位置
    time.sleep(10)                #受限于网络,防止评论未加载出来(网络好可以适当减小数值)
    pyautogui.click(xt,yt,button='left') ##评论文本输入框的位置               
    pyperclip.copy(content_text(num))  # 根据账号不同调用不同的评论写入评论
    time.sleep(2) 
    pyautogui.hotkey('ctrl','v')

def work(z):#    #模拟器屏幕中间点xy,点赞按钮xy,评论按钮xy,文本输入位置,文本发送按钮
    xp = z[0]; yp = z[1]; xl = z[2]; yl = z[3]; xc = z[4]; yc = z[5]; xt = z[6]; yt = z[7]; xs = z[8];ys = z[9]; num = z[10]
    n=random.randint(2,7)
    time.sleep(n)
    pyautogui.moveTo(xp, yp,0.1)#移动鼠标到(x,y,时长)
    pyautogui.scroll(-200)#当前位置滑动滚轮
    n=random.randint(5,10)
    time.sleep(n)
    n=random.randint(2,10)
    time.sleep(n)
    if n > 6:
        pyautogui.click(xl,yl,button='left')  ####在点赞的位置点击鼠标左键
        time.sleep(2)
    if n == 8:        #完成一次点赞评论
        
        lock.acquire()         #加锁,进程互斥
        content(xc,yc,xt,yt,num)    #获取评论输入
        lock.release()         #解锁
        time.sleep(8)
        pyautogui.click(xs,ys,button='left') #点击发送
        time.sleep(3)
        pyautogui.click(xp,yp,button='left') #点击空白区域返回视频页
    # n=random.randint(1,3)
    # time.sleep(n)

pool = Pool(len(data_list))     #建立线程池,根据窗口数量
while True:
    # work(1614,248,1841,595,1852,682,1450,979,1854,884)        
    pool.map(work,data_list)        #多线程运行操作
    # pool.close()
    # pool.join()
    if time.time() - star_time > run_time:
        sys.exit()    #时间到退出程序

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值