#coding:utf-8
from appium import webdriver
from time import sleep
import random
desired_caps={
    "platformName":"android",
    "platformVersion":"7.1.1",
    "deviceName":"your_device_name",
    "appPackage":"com.songheng.eastnews",
    "appActivity":"com.oa.eastfirst.activity.WelcomeActivity",
    "noReset":"True"
}
driver=webdriver.Remote("http://127.0.0.1:4723/wd/hub",desired_caps)
sleep(3)
def swipe_up(t=500,n=1):
    """上滑"""
    size=driver.get_window_size()
    x1=size['width']*0.5
    y1=size['height']*0.85
    y2=size['height']*0.15
    for j in range(n):
        driver.swipe(x1,y1,x1,y2,t)
def swipe_down(t,n):
    """下滑"""
    size=driver.get_window_size()
    # 开始x坐标
    x1=size['width']*0.5
    # 开始y坐标
    y1=size['height']*0.15
    #结束y坐标
    y2=size['height']*0.85
    for j in range(n):
        driver.swipe(x1,y1,x1,y2,t)
#浏览新闻
def look_news(x,y):
    sleep(8)
    #点击新闻链接,没有找到比较合适的可利用的属性,只能用坐标了
    driver.tap([(x,y)])
    sleep(16)
    #上滑继续看,不然任务栏进度会暂停
    swipe_up(t=500,n=1)
    sleep(10)
    #上滑继续看,不然任务栏不动
    swipe_up(t=500,n=1)
    sleep(8)
    #下滑看,走完一次任务栏获得金币
    swipe_down(t=500,n=1)
    sleep(10)
    #返回新闻页
    driver.keyevent('4')
    sleep(random.randint(2,4))
    #上滑,选其他新闻
    swipe_up(t=500,n=1)
#先定个小目标,跑它一百次
for i in range(100):
    print (i)
   #推荐
    if i <= 20:
        look_news(500,540)
   #热点
    elif i <= 40:
        driver.tap([(250, 250)])
        sleep(2)
        look_news(540,680)
   #视频
    elif i <= 60:
        driver.tap([(400, 250)])
        sleep(2)
        look_news(540,680)
   #娱乐
    elif i < 80:
        driver.tap([(530, 250)])
        sleep(2)
        look_news("540", "1050")
    elif i < 100:
        driver.tap([(530, 260)])
        sleep(2)
        look_news("540", "480")
    else:
        driver.quit()
查找可利用的activity和packgage命令:
aapt dump badging **.apk   
会显示可加载运行的activity