程序员简友广场

python 自动控制抖音并根据颜值打分

2020-08-19  本文已影响0人  _铁马冰河_
效果预览
image.png

1. 配置Appium

2. app自动化

 def getSize(self):                               #获取当前的width和height的x、y的值
         x = self.driver.get_window_size()['width']   #width为x坐标
         y = self.driver.get_window_size()['height']  #height为y坐标
         print(x,y)
         return (x, y)

    def swipeUp(self,t):  #当前向上滑动swipeup
        l = getSize()
        x1 = int(l[0] * 0.5)
        y1 = int(l[1] * 0.75)
        y2 = int(l[1] * 0.25)
        driver.swipe(x1, y1, x1, y2,500) 

效果如下


IMG_6504.gif

3. 截取视频内容并压缩

部分代码如下

      self.driver.save_screenshot('./'+ index +'.png')
      self.thumbnail(name,"ys"+name)
      ls_d = self.base_64_imag("ys"+name)

4. 截图并识别人脸

部分代码如下

        # 截图保存到当前文件
        time.sleep(1)
        
        name =  index +'.png'
        self.driver.save_screenshot('./'+ index +'.png')
        self.thumbnail(name,"ys"+name)
        ls_d = self.base_64_imag("ys"+name)
        res = baidu.checkout_face(ls_d)
        jsonMap = res.json()
        print(jsonMap)
        # 暂时取第一个
        if os.path.exists(name):
            os.remove(name)
        if "result" in jsonMap and jsonMap["result"] is not None:
            face_list = jsonMap["result"]["face_list"]
            if len(face_list) > 0:
                faceMap = face_list[0]
                os.rename("ys"+name, "年龄"+str(faceMap["age"])+"颜值"+str(faceMap["beauty"])+name)
            else:
                os.rename("ys"+name,"未检测到人脸"+index+".png")
        else:
            os.rename("ys"+name,"未检测到人脸"+index+".png")

        print("开始滑动")
        self.swipeUp(200)
        # 关闭app
        time.sleep(4)
        
    def base_64_imag(self, path):
        
        f=open(path,'rb') #二进制方式打开图文件
        ls_f=base64.b64encode(f.read()) 
        return ls_f.decode()
        f.close()

QQ20200819-190207-HD.gif

5. 可拓展功能

上一篇下一篇

猜你喜欢

热点阅读