0

我正在为我的项目创建一份报告(进行了“n”个 API 调用的 IP 地址)。我想创建一个包含属性 3 列(ip、url 和 count)的表。表示此 {ip} 已调用此 {url} {count} 次。

所以我在两本词典中有我的信息,

  1. ip_count_dict 格式:已调用的唯一 ip 数

       { '127.32.4.5' : 3,
          '43.43.5.3' : 4
        }
    
  2. ip_url_list_dict 格式:已调用 url 的唯一 ip 数量

       { '127.32.4.5' : '/v1/draft',
          '43.43.5.3' : '/v0/ready'
        }
    

html正文:

    def get_email_html_body(ip_count_dict, ip_url_list_dict, start_timestamp, end_timestamp, count): 
        email_body = """
                <html>
                <head>
                  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
                  <title>html title</title>
                  <h4 align= "center" >Summary : Platform Daily Status Report</h4>
                </head>
                <body>
                    <h4 align="center"> Start Timestamp : %s] - End Timestamp : %s] </h4> 
                    <table align= "center" border= "1px solid">
                        <thead >
                          <tr bgcolor="silver">
                            <th>Client Ip</th>
                            <th>URL</th>
                            <th>Count</th> 
                          </tr>
                        </thead>
                        <tbody> """

        res_html2  =  ""         
        for key, value in ip_url_list_dict.items():                    
            html2 = ("""         
                          <tr border = 1px black> 
                            <th>%s</th>
                            <td>%s </td>
                             </tr>"""  )% (key , value  ) 
            res_html2 = html2 +  res_html2

        html4 = """      
                     </tbody> 
                      </table>  
                      <table>
                </body>
                </html> """

        return email_body +  res_html2 + res_html3 + html4

我有一个有 ip 和 url 的表,它可以工作,但不能在同一个表中添加计数。你有任何逻辑这样做吗?

4

1 回答 1

1

这应该可以解决问题。

html2 = ("""<tr border = 1px black> 
              <th>%s</th>
              <td>%s</td>
              <td>%s</td>"""  )% (key, value, ip_count_dict.get(key, 0)) 
于 2013-09-02T07:56:52.643 回答