pylatex中如何让字符串不出表

问题描述

cur.execute("SELECT * FROM services WHERE host_id = " + str(row['id']))         
        services = cur.fetchall()                   
        with doc.create(LongTabu("l l l l l",)) as data_table:               
            data_table.add_hline()
            data_table.add_row(["Port (service)","Service","Protocol","info",'CVEs'])
            data_table.add_hline()        
            data_table.end_table_header()
            data_table.add_hline()            
            data_table.add_row((multicolumn(5,align='r',data='Continued on Next Page',),strict=True)
            data_table.add_hline()
            data_table.end_table_footer()
            #data_table.add_hline()
            #data_table.add_row((multicolumn(5,#                    data='Not Continued on Next Page'),))
            data_table.add_hline()
            data_table.end_table_last_footer()  

            cur.execute("SELECT * FROM services WHERE host_id = " + str(row['id']))         
            services = cur.fetchall()        
            for svc in services:                   
                cur.execute("SELECT * FROM refs WHERE id IN (SELECT ref_id FROM vulns_refs WHERE vuln_id IN (SELECT id FROM vulns WHERE service_id = %s ))",(svc['id'],))         
                CVEs = cur.fetchall()                
                CVElist = [c['name'] for c in CVEs] 
                for count in CVElist:                                            
                    CVEstring = ",".join(CVElist)
                    CVEstring = textwrap.wrap(textwrap.fill(CVEstring.replace("’",'\n')))               
                    data_table.add_row([svc['port'],svc['name'],svc['proto'],svc["info"],CVEstring],strict=True)

[上面代码的结果][1] [1]:https://i.stack.imgur.com/MRYbK.png

如上图所示,该字符串只是继续运行,而不是创建一个新行(列 CVE),同时仍位于同一表行中。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)