返回顶部
首页 > 资讯 > 后端开发 > Python >Python如何统计Jira的bug并发送邮件功能
  • 937
分享到

Python如何统计Jira的bug并发送邮件功能

2023-06-26 06:06:29 937人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

本篇文章为大家展示了python如何统计Jira的bug并发送邮件功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。首先在PyCharm上使用pip安装 pip install&

本篇文章为大家展示了python如何统计Jira的bug并发送邮件功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

Python如何统计Jira的bug并发送邮件功能

首先在PyCharm上使用pip安装

 pip install html-table pip install jira

初始化发件人邮箱,账号,密码

# 发件人邮箱账号my_sender = 'username@xxx.com.cn'# user登录邮箱的用户名,passWord登录邮箱的密码(授权码,即客户端密码,非网页版登录密码),但用腾讯邮箱的登录密码也能登录成功my_pass = 'xxxxx'# 收件人邮箱账号my_users=['username@xxx.com.cn']

登录Jira

class JiraTool:#初始化    def __init__(self):        self.server = 'Http://ip:5500' //连接Jira的Ip地址        self.basic_auth = ('username', 'password') //连接Jira的账户和密码        self.jiraClinet = None

登录Jira

def login(self):    self.jiraClinet = JIRA(server=self.server, basic_auth=self.basic_auth)    if self.jiraClinet != None:        print("登录成功!")        return True    else:        return False

获取Jira问题列表

def get_issue_list_by_jql(self, jql):    issue_list = []    issue_key_list = self.jiraClinet.search_issues(jql_str=jql,startAt=0,maxResults=1000) //Jira默认统计50条,maxResults设置大小    for key_list in issue_key_list:        issue = self.jiraClinet.issue(key_list.key)        issue_list.append(issue)        # print(issue.key) #关键字        # print(issue.fields.summary) #bug描述        # print(issue.fields.status) bug状态        # print(issue.fields.assignee) #经办人        # print(issue.fields.components[0].name) #模块         # print(issue.fields.priority) #优先级    return issue_list

创建一个表格

def gen_new_bug_caption_str(issue_list):    dict = {}    for issue in issue_list:        dict[issue.fields.status.name] = dict.get(issue.fields.status.name, 0) + 1        #dict[issue.key.split('-')[0]] = dict.get(issue.key.split('-')[0],0) + 1    caption_str = '近一周共计新增bug' + str(len(issue_list)) + '个。 已关闭:' + str(dict.get('已关闭')) + '个。 已解决待关闭:' + str(dict.get('已解决')) + '个。 待处理:' +str(dict.get('待处理')) + '个'    #print(caption_str)    return caption_str

生成html

 #标题样式    # table.caption.set_style({'font-size':'15px','align':'left'})    table.caption.set_style({'font-size':'15px'})    # 表格样式,即<table>标签样式    table.set_style({        'border-collapse':'collapse',        'word-break':'keep-all',        'white-space':'nowrap',        'font-size':'14px'    })      #设置每个单元格的样式,主要是规定边框样式:    table.set_cell_style({        'border-color':'#000',        'border-width':'1px',        'border-style':'solid',        'padding':'5px',    })    #设置表头单元格样式,规定颜色,字体大小,以及填充大小:    #表头样式    table.set_header_row_style({        'color':'#fff',        'background-color':'#696969',        'font-size':'18px',    })    #覆盖表单单元格字体样式    table.set_header_cell_style({        'padding':'15px',    })    #遍历数据行,根据不同状态设置背景颜色    for row in table.iter_data_rows():        if row[1].value in "待处理":            row[1].set_style({                'background-color': '#FFB6C1',            })        if row[1].value in "已解决":            row[1].set_style({                'background-color': '#E1FFFF',            })        if row[1].value in "已关闭":            row[1].set_style({                'background-color': '#90EE99',            })        if row[1].value in "重新打开":            row[1].set_style({                'background-color': '#DC143C',            })        if row[1].value in "开发中":            row[1].set_style({                'background-color': '#f7d7a7',            })    #生成HTML文本:    html = table.to_html()    # print(html)    return html

发送邮件

def sendmail(html):    ret=True    try:        # 邮件内容        msg=MIMEText(html,'html','utf-8')        # 括号里的对应发件人邮箱昵称、发件人邮箱账号        msg['From']=fORMataddr(["张三",my_sender])        # 括号里的对应收件人邮箱昵称、收件人邮箱账号        #msg['To']=formataddr(["李四",my_user])        # 邮件的主题        msg['Subject']="bug情况统计"        server=smtplib.SMTP_SSL("smtp.exmail.qq.com", 465)        # 登录服务器,括号中对应的是发件人邮箱账号、邮箱密码        server.login(my_sender, my_pass)        # 发送邮件,括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件        server.sendmail(my_sender, my_users, msg.as_string())        # 关闭连接        server.quit()        # 如果 try 中的语句没有执行,则会执行下面的 ret=False    except Exception:        ret=False    return ret

调试

new_bug_jql = "project in (AAA, BBB, CCC)  AND issuetype in (Bug, 缺陷) AND created >= -1w ORDER BY component ASC, assignee ASC, priority DESC, updated DESC"old_bug_jql = "project in (AAA, BBB, CCC)  AND issuetype in (Bug, 缺陷) AND status in (待处理, 开发中, Reopened) AND created <= -1w ORDER BY component ASC, assignee ASC, priority DESC, updated DESC"jiraTool = JiraTool()jiraTool.login()new_issue_list = jiraTool.get_issue_list_by_jql(new_bug_jql)new_bug_caption_str = gen_new_bug_caption_str(new_issue_list)new_bug_html = gen_html_table(new_issue_list,new_bug_caption_str)# print(new_bug_html)old_issue_list = jiraTool.get_issue_list_by_jql(old_bug_jql)old_bug_html = gen_html_table(old_issue_list, "超过一周未关闭bug")eamil_html = (new_bug_html + "<br/><br/><br/>" + old_bug_html).replace("&gt;", ">").replace("&quot;", "\"").replace("&lt;", "<")# print(eamil_html)ret=sendmail(eamil_html)if ret:    print("邮件发送成功")else:    print("邮件发送失败")

上述内容就是Python如何统计Jira的bug并发送邮件功能,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网Python频道。

--结束END--

本文标题: Python如何统计Jira的bug并发送邮件功能

本文链接: https://lsjlt.com/news/307114.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python统计Jira的bug并发送邮件功能
    1.首先在pycharm上使用pip安装 pip install html-table pip install jira 2.初始化发件人邮箱,账号,密码 # 发件人邮箱账号...
    99+
    2024-04-02
  • Python如何统计Jira的bug并发送邮件功能
    本篇文章为大家展示了Python如何统计Jira的bug并发送邮件功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。首先在pycharm上使用pip安装 pip install&...
    99+
    2023-06-26
  • Python如何实现邮件发送功能
    本篇内容主要讲解“Python如何实现邮件发送功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python如何实现邮件发送功能”吧!smtplib 与 email 模块 可以帮助我们正常的发送...
    99+
    2023-06-30
  • python实现SMTP邮件发送功能
    一直想着给框架添加邮件发送功能、所以整理下python下邮件发送功能 首先python是支持邮件的发送、内置smtp库、支持发送纯文本、HTML及添加附件的邮件。之后是邮箱、像163、qq、新浪等邮箱默认关...
    99+
    2022-06-04
    邮件发送 功能 python
  • springboot如何整合邮件发送功能
    这篇文章给大家介绍springboot如何整合邮件发送功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 pom依赖<dependency>    &nbs...
    99+
    2023-06-22
  • python实现发送邮件及附件功能
    今天给大伙说说python发送邮件,官方的多余的话自己去百度好了,还有一大堆文档说实话不到万不得已的时候一般人都不会去看,回归主题: 本人是mac如果没有按照依赖模块的请按照下面的截图安装 导入模块如果没...
    99+
    2022-06-04
    发送邮件 附件 功能
  • python发送邮件功能实现代码
    本文实例为大家分享了python发邮件精简代码,供大家参考,具体内容如下 import smtplib from email.mime.text import MIMEText from email.u...
    99+
    2022-06-04
    发送邮件 代码 功能
  • python中使用yagmail发送邮件功能
    1.使用前先要安装 yagmail pip install yagmail -i https://pypi.douban.com/simple 2.使用QQ邮箱发送邮件,使用的是...
    99+
    2024-04-02
  • 如何用springboot实现发送邮件功能
    本篇内容介绍了“如何用springboot实现发送邮件功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!   ...
    99+
    2023-06-20
  • Shell脚本实现备份系统文件并邮件发送功能
    本篇内容介绍了“Shell脚本实现备份系统文件并邮件发送功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!安装MUTT邮件客户端# ...
    99+
    2023-06-09
  • Java如何实现带附件的邮件发送功能
    这篇文章主要讲解了Java如何实现带附件的邮件发送功能,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。需要导入mail.jar、activation.jar这两个邮件发送的jar包,可在网上搜索并下载需要设置相关...
    99+
    2023-05-31
    java ava
  • 如何使用PHP实现发送邮件的功能
    随着互联网的发展,邮件已经成为人们生活和工作中必不可少的一部分。在Web开发中,发送邮件是一个非常重要的功能,无论是在网站注册、忘记密码、订单确认、用户反馈等方面,发邮件都扮演着至关重要的角色。而在PHP中,实现发送邮件非常简单。在本文中,...
    99+
    2023-05-14
    php PHP邮件
  • python如何发送qq邮件
    这篇文章给大家分享的是有关python如何发送qq邮件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。python自带了两个模块smtplib和email用于发送邮件。smtplib模块主要负责发送邮件,它对smt...
    99+
    2023-06-14
  • Java如何实现简单邮件发送功能
    本篇内容介绍了“Java如何实现简单邮件发送功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!需要的jar包:activation-1.1....
    99+
    2023-07-02
  • C语言如何实现发送邮件功能
    这篇文章主要介绍了C语言如何实现发送邮件功能的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C语言如何实现发送邮件功能文章都会有所收获,下面我们一起来看看吧。首先需要知道发送邮件的服务器IP地址和端口,我这里使用...
    99+
    2023-07-02
  • 如何使用Perl实现邮件发送功能
    如何使用Perl实现邮件发送功能,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。use Net::SMTP_auth;$smtp = Net::SMTP_auth->new...
    99+
    2023-06-04
  • SpringBoot如何实现发送邮件、发送微信公众号推送功能
    这篇文章主要介绍了SpringBoot如何实现发送邮件、发送微信公众号推送功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。SpringBoot实现发送邮件&emsp...
    99+
    2023-06-29
  • Python实现邮件发送功能的方法详解
    目录利用 python 发送普通邮件认识发送邮件流程认识邮件协议smtplib 模块email 包发送邮件小案例发送邮件的避坑总结邮件自动化篇章所需的新模块: smtplib 邮件协...
    99+
    2024-04-02
  • Python实现邮件发送功能的示例详解
    想实现发送邮件需要经过以下几步: 1、登录邮件服务器 2、构造符合邮件协议规则要求的邮件内容 3、发送 Python对SMTP支持有smtplib和email两个模块,email负责...
    99+
    2022-11-13
    Python邮件发送 Python邮件
  • python中怎么使用yagmail发送邮件功能
    本篇内容主要讲解“python中怎么使用yagmail发送邮件功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python中怎么使用yagmail发送邮件功能”吧!使用前先要安装 yagmai...
    99+
    2023-06-22
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作