标签分类 技术文章:
当前位置:首页 > Python技术文章 > python自动化脚本安装指定版本环境的方法详解

python自动化脚本安装指定版本环境的方法总结

  • 发布时间:
  • 作者:码农之家原创
  • 点击:86

这篇文章主要知识点是关于python、自动化、指定、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

Python编程无师自通
  • 类型:Python3大小:122.4 MB格式:PDF出版:人民邮电出版社作者:科里·奥尔索夫
立即下载

更多Python相关的学习资源可以参阅 Python电子书程序设计电子书 等栏目。

python自动化脚本安装指定版本环境的方法详解

这篇文章主要为大家详细介绍了python自动化脚本安装指定版本python环境的相关方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

 

一般情况下编译安装python环境需要执行以下步骤:

  • 下载源码包

  • 解压源码包

  • 安装配置

  • 编译以及编译安装

TALK IS CHEAP, SHOW YOU MY CODE.

 

#!/usr/bin/python
#coding:utf-8
'''
date:9/2/17 18:03 PM
author:lockey
email:lockey@123.com
desc:python自动化安装用户指定版本的python环境
'''
#导入Python的系统编程操作模块
import os

#导入用来处理Python运行时配置以及资源,与前当程序之外的系统环境交互的模块
import sys

#判断当前用户是否是root用户
if os.getuid() == 0:
  pass
else:
  print 'Not under root mode, please switch user!'
  sys.exit(1)

#获取用户输入的python安装版本
version = raw_input('Please input wanted python version(2.7/3.6)')

#如果嫌官网下载速度太慢可以指定python3.6.2的链接地址为本人上传资源地址
#根据用户输入的python版本选择源码包下载地址
if version == '2.7':
  url = 'https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz'
elif version == '3.6':
  url = 'https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz'
else:
  print 'Please input given version number(2.7/3.5)'
  sys.exit(1)

#拼接源码包下载地址并执行下载命令
cmd = 'wget ' + url
res = os.system(cmd)
if res != 0 :
  print 'Failed to download python source package, please inspect your network!'
  sys.exit(1)

if version == '2.7':
  package_version = 'Python-2.7.13'
else:
  package_version = 'Python-3.6.2'

#解压下载的源码包
cmd = 'tar xf ' + package_version + '.tgz'
res = os.system(cmd)

#如果解压失败则删除下载的源码包并且提示用户重新执行脚本
if res != 0:
  os.system('rm ' + package_version + '.tgz')
  print 'Please reexcute the script to install python'
  sys.exit(1)

#解压成功则进入解压后的源码目录中依次执行配置、编译、安装过程
cmd = 'cd ' + package_version + ' && ./configure --prefix=/usr/local/python && make && make install'

res = os.system(cmd)

#安装失败则提示用户安装失败了,让用户检查环境依赖
if res != 0:
  print 'Failed to install python, please inspect dependencies for python install!'
  sys.exit(1)

程序运行测试截图:

1. 测试普通用户模式下运行安装脚本:

python自动化脚本安装指定版本环境的方法详解

2. 切换到root用户然后运行自动安装脚本:

python自动化脚本安装指定版本环境的方法详解

3. 脚本自动配置(./configure)完成,进入编译(make)阶段

python自动化脚本安装指定版本环境的方法详解

4. 脚本编译安装完成:

python自动化脚本安装指定版本环境的方法详解

5. 测试安装的python环境:

python自动化脚本安装指定版本环境的方法详解

以上就是python自动化脚本安装指定版本环境的方法详解的详细内容,更多请关注码农之家其它相关文章!

以上就是本次给大家分享的关于Python的全部知识点内容总结,大家还可以在下方相关文章里找到python测试opencv时imread导致、 如何由java转学python、 python ddt数据驱动实例代码、 等python文章进一步学习,感谢大家的阅读和支持。

上一篇:python用户管理系统实例详解

下一篇:Python基础学习需要掌握的知识点总结

展开 +

收起 -

学习笔记
网友NO.440026

python自动化运维是干什么的

运维自动化是一组将静态的设备结构转化为根据IT服务需求动态弹性响应的策略,目的就是实现IT运维的质量,降低成本。 运维自动化设计思想 (推荐学习:Python视频教程) 管理体系化 工作流程化 人员专业化 任务自动化 任务自动化 环境定义自动化 部署自动化 监控自动化 为什么选python做自动化运维 自动化运维关心问题 自动化 易实现 跨平台 轻量级 适合自动化运维编程语言特点 丰富的第三方库 学习成本低 跨平台 轻量级 更多Python相关技术文章,请访问Python教程栏目进行学习! 以上就是python自动化运维是干什么的的详细内容,更多请关注码农之家其它相关文章! ……

网友NO.597103

python接口自动化(十六)--参数关联接口后传(详解)

简介 大家对前边的自动化新建任务之后,接着对这个新建任务操作了解之后,希望带小伙伴进一步巩固胜利的果实,夯实基础。因此再在沙场实例演练一下博客园的相关接口。我们用自动化发随笔之后,要想接着对这篇随笔操作,不用说就需 要用参数关联了,发随笔之后会有一个随笔的 id,获取到这个 id,继续操作传这个随笔 id 就可以了(博客园的登录机制已经变了,不能用账号和密码登录了,这里用 cookie 登录) 大致流程步骤:web界面操作登录抓包查看cookie—代码模拟cookie登录—web界面操作新建随笔和保存随笔—抓包查看新建随笔和保存随笔的url和参数等—代码模拟新建随笔并保存编辑内容—web界面操作删除随笔—抓取删除操作请求—提取参数—传参—代码实现。 一、删除随笔 1、我们前面讲过登录后新建随笔和保存随笔后,不记得可以点击传送门那可以继续接着操作:删除刚才新建的随笔 2、用fiddler抓包,抓到删除新建随笔的请求,从抓包结果可以看出,传的json参数是postId 3.这个postId哪里来的呢?可以看上个请求的url地址 4、也就是说保存草稿箱成功之后,重定向一个 url 地址,里面带有 postId 这个参数。那我们想办法将这个参数提取出来就可以了 二、提取参数 1、我们需要的参数 postId 是在保存成功后 url 地址,……

网友NO.962673

python接口自动化测试之接口数据依赖的实现方法

在做自动化测试时,经常会对一整套业务流程进行一组接口上的测试,这时候接口之间经常会有数据依赖,那么具体要怎么实现这个依赖呢。 思路如下: 抽取之前接口的返回值存储到全局变量字典中。 初始化接口请求时,解析请求头部、请求参数等信息中的全局变量并进行替换。 发出请求。 核心代码实现: 抽取接口的返回值存储到全局变量字典中 # 抽取接口的返回值存储到全局变量字典中if set_global_vars and isinstance(set_global_vars, list): for set_global_var in set_global_vars: if isinstance(set_global_var, dict): name = set_global_var.get('name') # name 代表全局变量的名字 query = set_global_var.get('query') # query 代表全局变量的查询语句 value = common.dict_get(response_json, query) # response_json 代表接口的响应数据 self.global_vars[name] = value 其中set_global_vars代表的是当前测试用例的全局变量设置列表, self.global_vars则代表测试类实例的全局变量字典,common.dict_get方法的具体实现请移步方法具体实现 解析字符串中全局变量并进行替换 import re# 解析字符串中全局变量并进行替换def resolve_global_var(pre_resolve_var, global_var_dic, global_var_regex='\${.*?}', match2key_sub_string_start_index=2, match2key_sub_string_end_index=-1): ''' :param pre_resolve_var: 准备进行解析的变量str :param global_var_dic: 全局变量字典dict :param ……

网友NO.867230

利用Python如何实现数据驱动的接口自动化测试

前言 大家在接口测试的过程中,很多时候会用到对CSV的读取操作,本文主要说明Python3对CSV的写入和读取。下面话不多说了,来一起看看详细的介绍吧。 1、需求 某API,GET方法,token,mobile,email三个参数 token为必填项 mobile,email 必填其中1项 mobile为手机号,email为email格式 2、方案 针对上面的API,在做接口测试时,需要的测试用例动辄会多达10+, 这个时候采用数据驱动的方式将共性的内容写入配置文件或许会更合适。 这里考虑把API、参数、以及预期结果预行在格式化的CSV里保存,利用csv组件从CSV里读取URL、参数以及预期结果,Requests组件发起请求,将响应结果与预期结果进行比对,最后把比对结果写到结果CSV。 流程如下图 ☟ 3、实现 1、在上代码之前,先安装好如下几个组件: csv 读写CSV文件 json requests 发起请求,获取响应结果 unittest 测试用例调度 2、data.csv(本示例选取部分用例) 3、reader_CSV函数代码示例 import csvimport jsonimport requestsimport timeimport unittestdef readCSV(self,filename): ''' :param filename: 需要读取的数据文件 :return: [{data1},{data2}...] ''' datas = [] try: #以DictReader的方式读取数据文件,方便与json互做转换 with open(filename,'r') as csvfile : #从文件里读取到的数据转换成字典列表的格式 reader = csv.DictReader(csvfile) for row in reader: data = {} data['id'] ……

<
1
>

Copyright 2018-2019 xz577.com 码农之家

版权责任说明