[已失效] 抖音自动关注脚本,每天加粉120人左右BY_cheng0009

[复制链接]
唐章小小社区官方认证 发表于 2020-6-12 13:05 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
最近做抖音号,用python写了个脚本,自动关注粉丝。(通过adb连接手机,既可以用usb线,也可以wifi连接)
脚本的功能:
    在手机上打开一个指定用户的粉丝列表,逐个进行关注,关注之前,先判断是否女性,如是则关注,不是则返回,继续循环。(还可以加入打招呼语)
    每天关注200个女性用户,专门关注那种粉丝量不多的,这样回关率会更高。
    我测试的结果是每天能有120人回关我。
   自己再把视频内容打磨一下,开个抖音小店,挣点小钱还是可以的。
   当然,从长远来说,做爆款视频才是出路,一个视频火了几千几万粉丝都有了,但那玩意靠运气,有时不是一朝一夕就能达到的。
   这个脚本可以每天持续,无成本运行。
   还有自动点赞美女(孩子)视频功能(加了百度的人脸识别功能)这个也已实现,可以增加与粉丝的粘性互动,对于带货有好处。
   接下来我还准备做自动回复,自动评论等功能。

如果有人感兴趣,我再出教程吧。


  1. #python 3.6.4
  2. #在cmd中连接手机的命令:adb connect 192.168.31.32(地址)
  3. # encoding:utf-8

  4. import os
  5. import cv2
  6. import sys
  7. import time
  8. import random
  9. from PIL import Image #pip install pillow  
  10. import diannaoshuohua

  11. os.system('adb tcpip 1314')
  12. os.system('adb connect 192.168.xx.xxx:1314')#无线连接 adb
  13. time.sleep(2)
  14. d = u2.connect('192.168.xx.xxx:1314')#否则,要在cmd界面去运行

  15. # 上传照片到电脑,截粉丝列表图片
  16. def screen():
  17.         # 截图保存在手机上
  18.         os.system('adb shell screencap -p /sdcard/screen.png')
  19.         # 传到电脑上
  20.         os.system('adb pull /sdcard/screen.png')

  21. # 截图,该粉丝详情页图片
  22. def screen3():
  23.         # 截图保存在手机上
  24.         os.system('adb shell screencap -p /sdcard/screen3.png')
  25.         # 传到电脑上
  26.         os.system('adb pull /sdcard/screen3.png')


  27. #处理照片,找到要点击的按钮的所有纵坐标值
  28. def getDistance():         
  29.         #读取图片
  30.         image = Image.open('screen.png')
  31.         #返回元组
  32.         width = image.size[0]
  33.         height = image.size[1]
  34.         #print(height,width)

  35.         for i in range(803,804):#遍历一个纵列
  36.                 for j in range(0,height):
  37.                         if image.getpixel((i,j))[:3] == (179, 38, 69):#如果找到符合位置的颜色点,则确定了按钮所在
  38.                                 yield j   #生成器。返回所有找到的纵坐标的值

  39. def jietu(mubiaotu):
  40.         # 打开刚截取的全屏图
  41.         img = Image.open(mubiaotu)
  42.         # 定位到需要截取的地方
  43.         img = img.crop((0, 0, 1080, 1400))
  44.         # 截取成功并保存到本地
  45.         img.save('screen3_jietu.png')


  46. def as_num(x):
  47.     y = '{:.10f}'.format(x)  # .10f 保留10位小数
  48.     return y

  49. # 查找设定的图片是否包含在另一张图片里
  50. def findImg(target1,template2):#传入要查找的图片地址和名称,1为大图,2为小图,从大图里查找小图。
  51.         #读取目标图片
  52.         target = cv2.imread(target1)
  53.         #读取模板图片
  54.         template = cv2.imread(template2)
  55.         #获得模板图片的高宽尺寸
  56.         theight,twidth = template.shape[:2]
  57.         #执行模板匹配,采用的匹配方式cv2.TM_SQDIFF_NORMED
  58.         result = cv2.matchTemplate(target,template,cv2.TM_SQDIFF_NORMED)
  59.         #归一化处理
  60.         cv2.normalize(result,result, 0, 1, cv2.NORM_MINMAX, -1 )
  61.         #寻找矩阵(一维数组当做向量,用Mat定义)中的最大值和最小值的匹配结果及其位置
  62.         min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(result)
  63.         #匹配值转换为字符串
  64.         #对于cv2.TM_SQDIFF及cv2.TM_SQDIFF_NORMED方法min_val越趋近与0匹配度越好,匹配位置取min_loc
  65.         #对于其他方法max_val越趋近于1匹配度越好,匹配位置取max_loc
  66.         strmin_val = str(min_val)
  67.         #绘制矩形边框,将匹配区域标注出来
  68.         #min_loc:矩形定点
  69.         #(min_loc[0]+twidth,min_loc[1]+theight):矩形的宽高
  70.         #(0,0,225):矩形的边框颜色;2:矩形边框宽度
  71.         cv2.rectangle(target,min_loc,(min_loc[0]+twidth,min_loc[1]+theight),(0,0,225),2)
  72.         #显示结果,并将匹配值显示在标题栏上
  73.         #cv2.imshow("MatchResult----MatchingValue="+strmin_val,target)
  74.         print ("匹配最小值为:"+as_num(float(str(min_val))))
  75.         print ('匹配最大值为:'+as_num(float(str(max_val))))


  76.         r = int((image.getpixel((min_loc[0]+23,min_loc[1]+17)))[0])

  77.         if (abs(float(as_num(float(str(max_val))))) >= 0.9) and r > 180:#如果找到符合位置的颜色点:
  78.                 print ('找到符合的图片')
  79.                 return True
  80.         else:
  81.                 print('没有找到符合的图片')
  82.                 return False
  83.         # cv2.waitKey()
  84.         # cv2.destroyAllWindows()


  85. #生成器 可以遍历 惰性计算(只能运行一次)
  86. if __name__ == '__main__':# 主函数开头


  87.         i=0
  88.         n=0
  89.         k=0
  90.         sj = random.uniform(1,4)
  91.          
  92.         for _ in range(100):#翻的页数
  93.                 screen()
  94.                 print('zheli')
  95.                 xPosition = getDistance()
  96.                 print(xPosition)
  97.                 for y in xPosition:
  98.                         screen()
  99.                         print('2zheli')
  100.                         xPosition = getDistance()
  101.                         time.sleep(sj)
  102.                         for y in xPosition:
  103.                                 time.sleep(sj)
  104.                                 os.system('adb shell input tap 495 {}'.format(y))
  105.                                 print(str(y))
  106.                                 time.sleep(sj)
  107.                                 screen3()#个人详情页截图        
  108.                                 time.sleep(sj)
  109.                                 jietu('screen3.png')
  110.                                 time.sleep(sj)
  111.                                 image = Image.open("screen3_jietu.png")#打开个人详情页截图
  112.                                 time.sleep(sj)
  113.                                  
  114.                                 if findImg('screen3_jietu.png','chazhaomubiao.png'):
  115.                                         print('找到一位女士,即将关注!')
  116.                                         os.system('adb shell input tap 550 466')#点击关注按钮
  117.                                         time.sleep(sj)
  118.                                         #os.system('adb shell input tap 62 151')#点击后退按钮
  119.                                         os.system('adb shell input keyevent 4')
  120.                                         time.sleep(sj)                                         
  121.                                         i=i+1
  122.                                         print('已关注了'+str(i)+'位女士')
  123.                                         if i == 198:
  124.                                                 print('本次运行已关注198人,已退出运行!')
  125.                                                 diannaoshuohua.shuohua('本次已关注198人,即将退出!')
  126.                                                 #os.system("shutdown -s -t 60")
  127.                                                 os.system('adb shell input keyevent 26')#power事件。
  128.                                                 sys.exit()
  129.                                          
  130.                                 else:
  131.                                         print('这不是女士,即将返回!')
  132.                                         n=n+1
  133.                                         os.system('adb shell input keyevent 4') #点击后退按钮
  134.                                          
  135.                                         #os.system('adb shell input tap 62 151')
  136.                         break      
  137.                  
  138.                                          
  139.                 #翻页滑动按钮
  140.                 os.system('adb shell input swipe 548 1500 540 225 511')
  141.                 time.sleep(random.uniform(0.4, 0.8))
  142.                 print('正在翻页。。。')
  143.                 k=k+1
  144.                 print(f'已翻{k}页')
复制代码



温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

精彩评论14

沵魡管眞寬♂ 发表于 2020-6-12 14:09 | 显示全部楼层
谢谢楼主分享

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

jakhuk 发表于 2020-6-14 14:35 来自手机 | 显示全部楼层
感谢楼主分享

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

偏执的温柔 发表于 2020-6-14 22:08 来自手机 | 显示全部楼层
感谢楼主分享

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

Krureno 发表于 2020-6-16 14:26 来自手机 | 显示全部楼层
谢谢楼主的分享了

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

zml0106g 发表于 2020-6-17 18:09 | 显示全部楼层
感谢楼主分享

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

zhoukaiyu 发表于 2020-6-18 07:58 来自手机 | 显示全部楼层
谢谢分享太赞了

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

iyjinhai88 发表于 2020-6-18 18:30 | 显示全部楼层
感恩分享多谢

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

temp2005t 发表于 2020-7-7 14:04 来自手机 | 显示全部楼层
谢谢楼主无私的分享

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

相许 发表于 2020-7-11 10:49 来自手机 | 显示全部楼层
谢谢楼主的分享了

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

wojaiyh2 发表于 2020-7-26 12:46 来自手机 | 显示全部楼层
多谢楼主分享

温馨提示

记得善用社区搜索功能,那里可能会有你想要的资源;论坛站内搜索

如果你有什么需要的资源可以去悬赏问答发帖,求助社区的网友,我们会在第一时间给你回复哦;资源求档

对于本社区如果你有任何好建议或者相关合作可以随时与我们联系,或者在反馈建议发帖,您的支持,是我们发展的最大动力;投诉建议

本版积分规则
提醒:禁止复制他人回复等『恶意灌水』行为,违者重罚!

发表新帖
阅读排行更多+
快速回复 收藏帖子 返回列表
即刻加入,享受更多精彩。 会员登录[Login] 注册[Register]
资源分享,资源共享。
官方Facebok
Facebook.com/8ziyuan
意见反馈:[email protected]

关注我们的官方Twitter

Powered by Discuz! © 2016-2024 8ziyuan.com Inc. Protected by CloudFlare | 小黑屋 | 8资源分享论坛 | RSS订阅 | 手机版 | 联系我们