[本文出自天外归云的博客园]

前提

需要安装jira库:

pip install jira

编写脚本

例如,我想统计一下某一jira的备注里是否有如下信息,没有则给予提示:

[产品需求文档地址]:http://xxx/xx.cn
[视觉设计文档地址]:http://xxx/xx.cn
[开发接口文档地址]:http://xxx/xx.cn
[测试配置文档地址]:http://xxx/xx.cn

脚本如下:

# -*- coding: utf-8 -*-
from jira import JIRA
import re #登录jira
def login_jira(username,password):
jira = JIRA("http://jira.ms.netease.com",basic_auth=(username,password))
return jira #获取备注内容,返回包含备注内容的列表
def get_comments_content(issue):
return [comment.body for comment in issue.fields.comment.comments] #从所有的行中检查是否包含指定内容,是则返回OK
def check_from_lines(content,lines):
p = re.compile(content)
for line in lines:
if p.findall(line) != []:
return "OK" #检查jira上备注中的文档信息是否填写完善
def check_documents_info(issue):
lines = ''.join(get_comments_content(issue)).split("\r\n")
check_list = [u'产品需求文档地址',u'视觉设计文档地址',u'开发接口文档地址',u'测试配置文档地址']
lack_list = []
for item in check_list:
if check_from_lines(item,lines) != "OK":
lack_list.append(item)
check_doc_result = []
check_doc_result.append(u"Jira统计信息缺失,请在jira上按如下格式添加如下信息——")
for item in lack_list:
check_doc_result.append(u"["+item+u"]:http://xxx/xx.cn")
return check_doc_result #打印检查结果列表
def print_check_result(result_info):
for line in result_info:
print line if __name__ == '__main__':
jira = login_jira('用户名','密码')
issue = jira.issue('JIRA号')
print_check_result(check_documents_info(issue))

代码中“用户名”、“密码”、“JIRA号”是需要替换的部分。在PowerShell中运行效果如下:

通过Python的JIRA库操作JIRA的更多相关文章

  1. 使用python的jira库操作jira的版本单和问题单链接

    操作JIRA的API来实现的. 但感觉比单纯操作API要简单一些. from jira import JIRA from django.conf import settings JIRA_URL = ...

  2. Python 3 mysql 库操作

    Python 3 mysql 库操作 一.基础相关知识 MySQL数据库基本操作知识储备 数据库服务器:一台计算机(对内存要求比较高) 数据库管理系统:如mysql,是一个软件 数据库:oldboy_ ...

  3. Python - 通过PyYaml库操作YAML文件

    PyYaml简单介绍 Python的PyYAML模块是Python的YAML解析器和生成器 它有个版本分水岭,就是5.1 读取YAML5.1之前的读取方法 def read_yaml(self, pa ...

  4. Python学习-第三方库操作

    2018-05-04   12:03:19 Python安装模块,更新模块 #显示模块 pip list #显示过期模块 pip list --outdated #安装模块 pip install x ...

  5. python操作JIRA的库简单操作

    因公司需要,我们开发的PRISM又需要和JIRA对接啦, 今天找了一个JIRA库撸了一发~~~ jira库地址: https://pypi.python.org/pypi/jira/1.0.3 简单操 ...

  6. Python操作Jira

    目录 认证 项目(Project) 问题(Issue) 配置域(Fields) 关注者/评论/附件 创建/分配/转换问题 搜索 Jira提供了完善的RESTful API,如果不想直接请求API接口可 ...

  7. 通过PYTHON操作JIRA的COMMENT注释和TRANSITION工作流

    这是目前我们的自动化部署系统要作的,所以先实现吧. >>> from jira import JIRA >>> authed_jira = JIRA(server= ...

  8. python全栈开发day54-mysql库操作、表操作、数据类型、完整性约束

    一.昨日内容回顾 1.mysql的安装 1).解压文件 添加环境变量bin 2).初始化mysql生成数据data文件夹: mysqld --initialize-insecure 3).mysqld ...

  9. Python之MySQL库表操作

    一:库操作 1.1 增 # 语法 # create database 库名 default charset utf8; create database db1 default charset utf8 ...

随机推荐

  1. MYSQL-innodb性能优化几个点

    MYSQL-innodb性能优化几个点 数据库常用参数 MYSQL数据库的参数配置一般在my.ini配置(部分参数也可以用set  global 参数名=值 做临时调整,重启后失效),配置完后需要重启 ...

  2. 做一个合格的Team Leader -- 领导和管理基本概念 三种激励手段:恐吓、贪念、承诺

    做一个合格的Team Leader -- 基本概念 1.领导和管理   人们乐于被领导:他们不喜欢被管理,不喜欢像牛一样被驱赶或指挥.   管理者强迫人们服从他们的命令,而领导者则会带领他们一起工作. ...

  3. STAF进行分布式脚本分发----实践篇

    该博文理论支持文章:http://www.cnblogs.com/zhangfei/p/3169139.html 一.准备条件 1.安装STAF.由于其官网被墙了,所以大家可进入WAT群的网盘里去下载 ...

  4. Rplidar学习(三)—— ROS下进行rplidar调试

    一.建立工作空间.编译包 mkdir -p ~/catkin_rplidar/src #创建目录 cd ~/catkin_rplidar/src #打开目录 #下载rplidar_ros数据包,进行移 ...

  5. Python学习笔记(四)——编码和字符串

    一.编码 1.编码类别: (1)ASCII码:127个字母被编码到计算机里,也就是大小写英文字母.数字和一些符号 (2)GB2312码:中国制定的用于加入中文汉字的编码 (3)Unicode:防止由于 ...

  6. HDU 4006 The kth great number (优先队列)

    The kth great number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Oth ...

  7. 转:mvc 当中 [ValidateAntiForgeryToken] 的作用

    一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSR ...

  8. #ifdef __OBJC__宏定义的作用

    创建pch文件如下: 添加文件Tableview-Prefix.pch 内容如下: #import <Availability.h> #ifndef __IPHONE_3_0 #warni ...

  9. VMware Workstation 11

    VMware Workstation 11开始只支持Windows7以上的64位系统,VMware Workstation 10.0.6为最后支持32位和XP的系统. 下载地址: VMware Wor ...

  10. php开启与关闭错误提示

    windows系统开关php错误提示 如果不具备修改php.ini的权限,可以将如下代码加入php文件中: 代码如下 复制代码 ini_set("display_errors", ...