appium+夜神模拟器+python安卓app爬虫初体验
环境搭建:Windows 7 64bit
- jdk包:jdk-8u171-windows-x64.exe(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)
 - 安卓sdk:adt-bundle-windows-x86_64-20140702(https://developer.oculus.com/documentation/mobilesdk/0.6/concepts/mobile-dev-setup-android-win/)
 - appium:1.4.13.1(https://bitbucket.org/appium/appium.app/downloads/)
 - node.js:node-v4.4.7-x64(https://nodejs.org/en/download/23)
 - Appium-Python-Client
 
1、安装好jdk,sdk,根据安装的位置设置环境变量,
jdk:
JAVA_HOME------C:\Program Files\Java\jdk1.8.0_171
PATH------;%JAVA_HOME%\bin\;%JAVA_HOME%\jre\bin\;


sdk:
解压adt-bundle-windows-x86_64-20140702.zip
ANDROID_HOME------C:\Users\dell\Downloads\adt-bundle-windows-x86_64-20140702\adt-bundle-windows-x86_64-20140702\sdk
PATH------;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools\;
PATH------;%ANDROID_HOME%\build-tools\android-4.4W\;

测试



2、安装node.js
设置环境变量
PATH------C:\Program Files\nodejs\
测试

3、appium
appium是用.net开发的,所以需要安装.net framework4.5,下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=3065332
appium-doctor:appium安装好后,找到这个文件目录C:\Program Files (x86)\Appium\node_modules\.bin;设置环境变量
PATH------C:\Program Files (x86)\Appium\node_modules\.bin;
测试

4、Appium-Python-Client
pip install Appium-Python-Client
5、安装夜神模拟器
6、测试用程序打开夜神模拟器中的微信
下载微信安装包weixin667android1320.apk,安装到夜神浏览器中
aapt dump badging D:\weixin667android1320.apk


获取到appPackage和appActivity
adb devices

获取到deviceName
编写Python程序
#coding=utf-8
from appium import webdriver
desired_caps = {
'platformName':'Android',
'deviceName':'127.0.0.1:62001',
'platformVersion':'4.4.2',
'appPackage':'com.tencent.mm',
'appActivity':'com.tencent.mm.ui.LauncherUI'
} driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)
启动appium,右上角点三角形按钮,变成正方形,就是启动状态。

运行Python程序,可以看到夜神模拟器多了两个应用

之后打开了微信

7、元素定位
将夜神的nox_adb.exe复制重命名替换掉sdk文件夹里的adb.exe


启动uiautomatorviewer.bat

单击Device Screenshot便可以定位元素,右上框显示元素的定位

注意,如果打开页面包含Appium Setting 和Unlock两个应用会报错

appium+夜神模拟器+python安卓app爬虫初体验的更多相关文章
- python学习之爬虫初体验
		
作业来源: "https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2851" ** 1.简述爬虫原理 通用爬虫 即(搜索 ...
 - Node.js 网页瘸腿爬虫初体验
		
延续上一篇,想把自己博客的文档标题利用Node.js的request全提取出来,于是有了下面的初哥爬虫,水平有限,这只爬虫目前还有点瘸腿,请看官你指正了. // 内置http模块,提供了http服务器 ...
 - Python爬虫入门教程 41-100 Fiddler+夜神模拟器+雷电模拟器配置手机APP爬虫部分
		
爬前叨叨 从40篇博客开始,我将逐步讲解一下手机APP的爬虫,关于这部分,我们尽量简化博客内容,在这部分中可能涉及到一些逆向,破解的内容,这部分尽量跳过,毕竟它涉及的东西有点复杂,并且偏离了爬虫体系太 ...
 - python + 爬虫 + fiddler + 夜神模拟器 爬取app(1)
		
抓包 抓包是爬虫里面经常用到的一个词,完整的应该叫做抓取数据请求响应包 ,而Fiddler这款工具就是干这个的 普通https抓包设置 打开Fiddler ------> Options .然后 ...
 - appium——如何导出夜神模拟器下载“微信”app的apk
		
背景:夜神模拟器是一款功能强大的安卓模拟器,但是当我们在上面下载APP应用后,通常不知道apk文件在哪里,下面以“微信”APP为例做一下详细介绍. 一般情况下,使用夜神安卓模拟器下载的文件只能在夜神安 ...
 - 夜神模拟器调试web APP
		
前言:之前工作之余的时间自己做了一个web APP,但是都是在浏览器上调试的,这次想看看在手机上啥效果,所以下载了一个夜神模拟器 一.下载夜神模拟器 https://www.yeshen.com/ 二 ...
 - 【抓包分析】Charles和 夜神模拟器 对安卓应用进行抓包分析
		
准备工具 : 1 Charles : https://www.charlesproxy.com (收费) 2 夜神模拟器 : https://www.yeshen.com (免费) 2 模拟 ...
 - 【Python3爬虫】爬取美女图新姿势--Redis分布式爬虫初体验
		
一.写在前面 之前写的爬虫都是单机爬虫,还没有尝试过分布式爬虫,这次就是一个分布式爬虫的初体验.所谓分布式爬虫,就是要用多台电脑同时爬取数据,相比于单机爬虫,分布式爬虫的爬取速度更快,也能更好地应对I ...
 - 【Python3爬虫】学习分布式爬虫第一步--Redis分布式爬虫初体验
		
一.写在前面 之前写的爬虫都是单机爬虫,还没有尝试过分布式爬虫,这次就是一个分布式爬虫的初体验.所谓分布式爬虫,就是要用多台电脑同时爬取数据,相比于单机爬虫,分布式爬虫的爬取速度更快,也能更好地应对I ...
 
随机推荐
- CentOS 7中允许远程连接mariadb数据库
			
# /etc/init.d/mysql restart 或者 service mysqld start 启动服务 # /etc/init.d/mysql stop 或者 service mysqld ...
 - Ubuntu 12.04 LTS 查看网关地址方法汇总
			
来源:http://blog.csdn.net/duyiwuer2009/article/details/26263855 1. ip route show $ ip route show defau ...
 - 一本通之 一堆迷宫 (Dungeon Master&走出迷宫&走迷宫)
			
一本通在线崩溃....... . 有图有真相 这是个三维迷宫,其实和二位迷宫差不多,只是方向多加了2个. 但这个题的输入十分恶心,一度被坑的用cin.ignore(),但还是不过... 它的正确输入方 ...
 - centos7虚拟机克隆后设置固定IP
			
虚拟机centos7克隆一份出来之后,新centos7更改了固定IP,可是不生效.重启网卡时报错: network.service: control process exited, code=exit ...
 - microsoft.jet.oledb.4.0 未注册
			
64位系统已经不支持4.0 解决办法 1.下载 ACE2010的驱动,64位的. http://www.microsoft.com/downloads/zh-cn/details.aspx?famil ...
 - html网页中如何给文字加入下划线
			
网页中一些重要的文字或者特殊性高的文字,例如:链接,标注等我们需要加上下划线,那么这里我们就需要使用到<U>标签了,写法如下 字体下划线: <u>这里添加内容</u> ...
 - 关于anaconda中jupyter notebook错误
			
anaconda这个软件是真的坑,其中的jupyter notebook每次都会出错,不知道,为什么,可惜我的pycharm装tensorflow一直有错误,不然,真想卸了这个软件. 会莫名其妙闪退, ...
 - 编译问题:'<invalid-global-code>' does not contain a definition for 'Store' and no extension method 'XXX' accepting a first argument of type '<invalid-global-code>' could be found
			
这是VS2015上的bug. 我碰到的时候,是VS在合并两个分支的代码时,多加了一个}.导致编译语法报错.. 解决办法就是在错误的附近,找找有没有多余的大括号,删掉即可. 这个问题在vs2017上面没 ...
 - 【01】团饱和图:(一)EHM定理
			
团饱和图:(一)EHM定理 据A. Hajnal考证,术语"饱和性",即saturation,最早由前苏联数学家A. A. Zykov在1949年引入,用于研究线性复形,但是他的工 ...
 - this 指向详细解析(箭头函数)
			
前言 this 指向问题是入坑前端必须了解知识点,现在迎来了ES6时代,因为箭头函数的出现,所以感觉有必要对 this 问题梳理一下,遂有此文 在非箭头函数下, this 指向调用其所在函数的对象,而 ...