IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Appium数据抓取 -> 正文阅读

[移动开发]Appium数据抓取

环境配置

1.Java SDK下载及环境配置

java SDK下载:https://www.oracle.com/java/technologies/downloads/(科学上网)
配置JAVA_HOME:这是java sdk存放路径
配置path:将java sdk的bin目录加入到path中
验证:java/javac

在这里插入图片描述

2.Android SDK安装及环境配置

AndROid SDK下载:自己找去把
环境配置:1.新建一个ANDROID_HOME,将android sdk路径加入变量值
? ? ? ??2.将android sdk中的platform-tools加入到path中
验证:命令行敲adb

在这里插入图片描述
在这里插入图片描述

XPath定位技术

W3CXpath教程
注意:相较于web端的div span a p 等标签,移动端的标签为class,可以通过appium查看

Appium的安装和手机互联

安装:傻瓜式安装
手机互联

  1. 启动appium
  2. usb连接手机,并要求手机设置为开发者模式,文件传输模式,个别手机还需要在开发者选项中勾选一定内容(如果连接失败可以考虑搜索特定机型的勾选内容)
  3. 常见问题总结

在这里插入图片描述

微信朋友圈抓取

from appium import webdriver
import  time
from appium.webdriver.extensions.android.nativekey import AndroidKey
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
def main():
      desired_caps = {
          'platformName': 'Android',  # 被测手机是安卓
          'platformVersion': '11',  # 手机安卓版本
          'deviceName': 'xxx',  # 设备名,安卓手机可以随意填写
          'appPackage': 'com.tencent.mm',  # 启动APP Package名称
          'appActivity': '.ui.LauncherUI',  # 启动Activity名称
          'unicodeKeyboard': True,  # 使用自带输入法,输入中文时填True
          'resetKeyboard': True,  # 执行完程序恢复原来输入法
          'noReset': True,       # 不要重置App
          'newCommandTimeout': 6000,
          'automationName': 'UiAutomator2'
          # 'app': r'd:\apk\bili.apk',
      }
      driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
      driver.implicitly_wait(5)
      search = driver.find_element_by_xpath("//*[@text='发现']//preceding-sibling::android.widget.RelativeLayout//android.widget.ImageView")
      search.click()
      driver.implicitly_wait(5)
      friendGroup = driver.find_element_by_xpath("//android.widget.ListView//android.widget.LinearLayout[@resource-id='com.tencent.mm:id/h8z'][1]")
      friendGroup.click()
      driver.implicitly_wait(5)
      size = driver.get_window_size()
      height = size["height"]
      count = 0
      item_list = []
      for it in range(10):
          items = driver.find_elements_by_xpath('//*[@resource-id="com.tencent.mm:id/hyd"]')
          for item in items:
                  try:
                      nickname = item.find_element_by_xpath('//*[@resource-id="com.tencent.mm:id/fzg"]').get_attribute(
                          'text')
                      content = item.find_element_by_xpath('//*[@resource-id="com.tencent.mm:id/bmy"]').get_attribute(
                          'text')
                      if nickname and content:
                          count = count + 1
                          # print(count,end='')
                          # print(nickname)
                          # print(content,end='\n')
                          item_list.append(nickname)
                          item_list.append(content)
                      else:
                          print("")
                  except:
                      pass
          driver.swipe(300, 1000, 300, 300)
          time.sleep(2)
      final_list = []
      for it in item_list:
          if it not in final_list:
              final_list.append(it)

      print("去重后:")
      for it in item_list:
          print(it)
if __name__ == '__main__':
    main()


  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-11-15 15:59:21  更:2021-11-15 15:59:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:52:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码