1.简介 python-uiautomator2是一个自动化测试开源工具,仅支持Android平台的原生应用测试. 2.支持平台及语言 python-uiautomator2封装了谷歌自带的uiautomator2测试框架,提供便利的python接口.他允许测试人员直接在PC上编写Python的测试代码,操作手机应用,完成自动化,大大提高了自动化代码编写的效率. 3.python-uiautomator2主要分为两个部分 python端:运行脚本,并向移动设备发送HTTP请求 移动设备:移动设备…
MYSQL优化浅谈 msyql是开发常用的关系型数据库,快速.稳定.开源等优点就不说了. 个人认为,项目上线,标志着一个项目真正的开始.从运维,到反馈,到再分析,再版本迭代,再优化… 这是一个漫长且考验耐心的过程.在这个过程中,作为数据存储的关键–>数据库的优化起到尤为重要的作用. 语文学的不好,废话也不多说,下面结合实例咱们说说MYSQL需要从哪些方面进行优化. 在说优化之前先声明一下环境 名称 版本 备注 系统1 WIN 7——x64 SP1 个人电脑 系统2 centos6.4 个人电脑…
1.概述 Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertools提供的几个“无限”迭代器: import itertools natuals = itertools.count(1) # print(dir(itertools)) 打印出itertools下的所有方法6 for n in natuals: # 执行结果 1,2,3,4...无限迭代下去 Ctrl+c 退出循环 参照:https://www.liaoxuefeng.com…
我们经常会发现网页中的许多数据并不是写死在HTML中的,而是通过js动态载入的.所以也就引出了什么是动态数据的概念, 动态数据在这里指的是网页中由Javascript动态生成的页面内容,是在页面加载到浏览器后动态生成的,而之前并没有的. 在编写爬虫进行网页数据抓取的时候,经常会遇到这种需要动态加载数据的HTML网页,如果还是直接从网页上抓取那么将无法获得任何数据. 今天,我们就在这里简单聊一聊如何用python来抓取页面中的JS动态加载的数据. 给出一个网页:豆瓣电影排行榜,其中的所有电影信息都…
#其实本人很烦发博客,但为了面试还是发一下好,证明一下自己的能力 前言 首先说一下适用环境,在开发中我们有一些经常用到的数据(数据量大)需要存储起来. 存sql嘛又不合适,要知道在开发中每条sql语句都占资源的特别是数据量大的情况下.   放缓存也不合适,因为数据量大,你不知道什么时候缓存就炸了. 所以这时候就用在项目中生成文件的方式来存储是最合适的了,方法也简单. 首先导入我们python强大的os模块,os模块提供了非常丰富的方法用来处理文件和目录 然后我们需要告诉os模块我们需要操作的文件…
先来了解函数和执行函数在python的区别   我再重新定义一个函数,在函数前面加上@set_func 执行结果如下:   函数前面没有加@set_fun 执行结果如下:   是不是可以不修改原来的函数架构就可以添加功能,这就是装饰器.   看一个详细的例子           装饰器只有@就有了,而不是等到调用函数才有的     对不定长参数的函数进行装饰实例如下: 有多少参数都可以,以不定长参数接收,传以拆包地传   以上的都是多个函数对同一个装饰器装,多个装饰器对同一个函数装. 哪个装饰器…
深拷贝: 之前在开发中我遇到一个很大的bug,经过我多次调试之后我发现原本应该有保存数据的地方数据全部被清空,仔细一看发现原来是被人为删除,明明操作的是一个副本,为什么原本也会跟着一起被删除呢?经过了解我发现深拷贝这个说法.深拷贝和浅拷贝在js以及python中都是存在的,指定一个数组然后直接让一个变量等于该数组,接着改变该变量的话,指定的数组也会跟着发声改变.如何区分深拷贝与浅拷贝,简单点来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,如果…
1. mongdb和python交互的模块 pymongo 提供了mongdb和python交互的所有方法 安装方式: pip install pymongo 2. 使用pymongo 导入pymongo并选择要操作的集合 数据库和集合乜有会自动创建 from pymongo import MongoClient client = MongoClient(host,port) collection = client[db名][集合名] 添加一条数据 ret = collection.insert…
设计模式及Python实现   设计模式是什么? Christopher Alexander:“每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心.这样你就能一次又一次地使用该方案而不必做重复劳动.” 设计模式是经过总结.优化的,对我们经常会碰到的一些编程问题的可重用解决方案.一个设计模式并不像一个类或一个库那样能够直接作用于我们的代码.反之,设计模式更为高级,它是一种必须在特定情形下实现的一种方法模板.设计模式不会绑定具体的编程语言.一个好的设计模式应该能够用大部分编…
​什么是BI工具? 商业智能(BI)工具是利用一组方法和技术来准备,呈现和帮助分析数据的工具.通过此过程,数据将转化为可操作的业务信息,帮助决策者和最终用户做出更有效的数据驱动决策. 商业智能使用的一套方法和技术根据解决方案的目的而广泛多样化.有些工具专注于数据准备方面,可能包括ETL(提取,转换,加载)层,以更好地组织和利用数据.有些工具专注于更广泛的企业使用,可能专注于数据混搭,以帮助企业根据来自不同部门系统的信息做出组织决策.有些工具更侧重于自助服务功能和最终用户体验.有些工具专注于支持其…