如何到创建超链接为特定单元格在一个excel工作表使用Pandas

pu82cl6c  于 2023-01-19  发布在  其他
关注(0)|答案(1)|浏览(202)

我有一个如下所示的 Dataframe 。我想将此 Dataframe 插入Outlook邮件中,并以相同的格式发送[dataframe][1]https://i.stack.imgur.com/KE7Zr.png我想超链接列“Issue_Ticket”,其中存在该值。我尝试了以下代码,但我得到一个nonetype错误。有人能帮我解决这个问题吗?

def format_df(dataframe):
    dataframe['Issue_Ticket'] = dataframe['Issue_Ticket'].apply(lambda x: f'<a href="https://jira.net/browse/{x}">{x}</a>')
    dataframe.to_html(justify='center', render_links=True, escape=False, na_rep='NaN')

在outlook的邮件正文中,我调用以下函数:

df = pd.read_excel("Test_Results.xlsx", sheet_name='data').fillna('-')
html_body = '''\
<html><head></head>
<body>''' + format_df(df) + '''</body></html>

**错误:**html_body =“”“

TypeError:只能将str(不是“NoneType”)连接到str

qyzbxkaa

qyzbxkaa1#

def make_clickable(url, name):
    url = url + name
    return '<a href="{}">{}</a>'.format(url,name)

def format_df(dff):
    dff['Issue_Ticket'] = dff.apply(lambda x: make_clickable(base_url, x['Issue_Ticket']), axis=1)
    dff['Issue_Ticket'] = dff.apply(lambda x: '' if x['Issue_Ticket'] == np.NaN else x['Issue_Ticket'],axis=1)
    return dff.to_html(index=False, justify='center', render_links=True, escape=False, na_rep='NaN')

相关问题