怎样自拍

发布网友 发布时间:2022-04-22 04:13

我来回答

3个回答

懂视网 时间:2022-04-11 10:36


准备阶段

一般是用adb shell input keyevent + keyCode 来模拟按键事件,
比如adb shell input keyevent 24 可以模拟“音量加键”,
以下是比较常用的几个按键的键值表。

KeyCode 释义
3 Home键
4 返回键
5 电话拨号键
24 音量加键
25 音量减键
26 电源键
27 照相机启动键
87 多媒体下一曲键
88 多媒体上一曲键
91 音量静音键

Python批处理脚本形式

批量处理脚本的特点是:批量顺序执行语句

# coding=utf-8

import os
import time
import random

timeout = 7200 # 2小时(7200s)
now_time = time.time() # 获取当前时间戳,并保存到一个变量
keycode_dict = {3: "HOME键", 4: "返回键", 5: "电话拨号键", 24: "音量加键",
  25: "音量减键", 26: "电源键", 27: "照相机启动键", 87: "下一曲键",
  88: "上一曲键", 91: "静音键"}

# 循环获取当前时间,与now_time变量做时间戳做减法
while time.time() - now_time <= timeout:
 # 随机选择字典的某个“键”
 keycode = random.choice(list(keycode_dict.keys()))
 command = "adb shell input keyevent %s" % keycode
 print("成功按下了%s" % keycode_dict[keycode])
 # os.system(command)
 time.sleep(0.5) # 间隔0.5s,再进行下一次按键模拟
 print("已经进行了 %d 秒..., 一共需要测试 %d 秒" % (time.time() - now_time, timeout))

os.system("pause")

Python面向过程函数形式

看哪些代码块,可以组成一个具体的功能,
这个案例,可以有一个输入按键事件的功能函数,input_keyevent(),
这个函数可以接收参数输入,可以指定输入多久的按键事件。

# coding=utf-8

import os
import time
import random


def input_keyevent(timeout):
 now_time = time.time() # 获取当前时间戳,并保存到一个变量
 keycode_dict = {3: "HOME键", 4: "返回键", 5: "电话拨号键", 24: "音量加键",
   25: "音量减键", 26: "电源键", 27: "照相机启动键", 87: "下一曲键",
   88: "上一曲键", 91: "静音键"}

 # 循环获取当前时间,与now_time变量做时间戳做减法
 while time.time() - now_time <= timeout:
 # 随机选择字典的某个“键”
 keycode = random.choice(list(keycode_dict.keys()))
 command = "adb shell input keyevent %s" % keycode
 print("成功按下了%s" % keycode_dict[keycode])
 # os.system(command)
 time.sleep(0.5) # 间隔0.5s,再进行下一次按键模拟
 print("已经进行了 %d 秒..., 一共需要测试 %d 秒" % (time.time() - now_time, timeout))


input_keyevent(7200)
os.system("pause")

Python面向对象类形式
  1. 以"万物皆可归类"的思想, 先抽象化出一个类来,
    类名一般建议用"名词", 所以我们命名为"KeyeventInputter",
    代表按键事件输入器, 且一般要驼峰式(首字母大写)来规范类的命名。
  2. 养成良好的类的初始化(__init__)的习惯,
    初始化过程中, 可以定义属性,self.keycode_dict。
  3. 定义方法(函数), input_keyevent函数。
  4. 类是一个抽象的事物, 必须实例化成具体的对象后,
    才能进行调用, 所以我们实例化并命名成了k_obj, 表明是一个对象。
  5. 实例化成具体对象后, 对象就可以调用input_keyevent这个函数了。
# coding=utf-8

import os
import time
import random


class KeyeventInputter():
 def __init__(self):
 self.keycode_dict = {3: "HOME键", 4: "返回键", 5: "电话拨号键", 24: "音量加键",
    25: "音量减键", 26: "电源键", 27: "照相机启动键", 87: "下一曲键",
    88: "上一曲键", 91: "静音键"}

 def input_keyevent(self, timeout):
 now_time = time.time() # 获取当前时间戳,并保存到一个变量
 # 循环获取当前时间,与now_time变量做时间戳做减法
 while time.time() - now_time <= timeout:
  # 随机选择字典的某个“键”
  keycode = random.choice(list(self.keycode_dict.keys()))
  command = "adb shell input keyevent %s" % keycode
  print("成功按下了%s" % self.keycode_dict[keycode])
  # os.system(command)
  time.sleep(0.5) # 间隔0.5s,再进行下一次按键模拟
  print("已经进行了 %d 秒..., 一共需要测试 %d 秒" % (time.time() - now_time, timeout))


k_obj = KeyeventInputter()
k_obj.input_keyevent(7200)
os.system()

运行方式与效果

确保Android设备通过USB线与电脑连接了,adb设备有效连接,
以上代码的3种实现形式都可以直接运行,比如保存为random_keyevent.py并放在桌面,
建议python random_keyevent.py运行,当然也可以双击运行。
运行效果如下:
技术图片

更多更好的原创文章,请访问官方网站:www.zipython.com
自拍教程(自动化测试Python教程,武散人编著)
原文链接:https://www.zipython.com/#/detail?id=635502eeeae5455c9ba0411cd5617d
也可关注“武散人”微信订阅号,随时接受文章推送。
技术图片

《自拍教程50》Python_adb随机按键模拟2小时

标签:思想   input   语句   定义   面向   pytho   ESS   www   随机选择   

热心网友 时间:2022-04-11 07:44

1、脸微胖拍起来瘦一点的*技巧。

用手遮住脸颊。不要让脸直接暴露在镜头上,露出自己比较瘦的那一边的脸型,或用另一边可以用手遮住半个,或者两个手在下面呈现捧花的样子。也可以做一些搞怪的表情和镜镜头。

2、选角度*技巧。

不同角度拍出来的照片会有不一样的风格,所以需要多调试镜头,找找自己最耐看的角度。比如微微侧低头,视觉上真的比正面大脸照要温柔舒服多了,顺带上两侧的头发还能修一下轮廓。再比如下巴短的,可以用俯视的角度,从下往上,整个人会显得超有气场。

3、不要看镜头的*技巧。

不要看镜头,就是创造一种随意的感觉,镜头在那里,但我就是不看,转过身,低下头,抬头,闭上眼睛,沉思,不管怎么说,不管摄像机前面有什么,只是不要看。

4、借用道具*技巧。

无论是食物、植物、动物,都可以是*的道具,放在嘴边,遮住眼睛,抱在怀里。照片的效果会更自然,不做作,就当这次晒*,是为了手里那样东西。

5、瓜子脸*技巧。

瓜子脸是所有脸型中最上镜的脸型,线条弧度比较流畅,整体轮廓均匀,抓拍任一角度都比较上镜。瓜子脸型的妹子拍照不需要太多的讲究,主要就是拍照时不要做作,自然才是最美的。

热心网友 时间:2022-04-11 09:35

从上往下拍啊

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com