Red de conocimiento informático - Problemas con los teléfonos móviles - python HTML muestra datos de tabla (celdas combinadas)

python HTML muestra datos de tabla (celdas combinadas)

Copie el código y guárdelo localmente, luego ejecútelo y abra el enlace de demostración para ver el efecto#! /usr/bin/env?python3

from?collections?import?OrderedDict

from?os.path?import?dirname,?abspath,?join?[(1,2) ), (1, 2), (1, 3), (2, 4), (2, 5)]

column_names?=?('Nombres de columnas', ?' Datos') p>

edicto?=?OrderedDict()

para?k,?v?in?L:

si?k?not?in?edicto:

edicto[k]? =?[v]

else:

edicto[k].append(v)

sa?

lt;!DOCTYPE?HTMLgt;

lt;meta?charset="UTF-8"gt;

lt;htmlgt;

lt;bodygt;

lt;table?border="1"?cellpadding="10"gt;

lt;trgt;

lt; cosa; {}lt;/thgt;

lt;thgt;{}lt;/thgt;

lt;/trgt;

'''. formato( *nombres_columnas)

sc?=?

lt;/tablegt;

lt;/bodygt;

lt;/htmlgt;

'''

sb?=?[]

tdform?=?'' lt;td?align="center"gt;{}lt;/tdgt;'.format? >for?k,?v?in?odict.items():

if?len(v)?==?1:

sb.append('lt;trgt ;')

sb.append(tdform(k))

sb.append(tdform(v))

sb.append('lt;/ trgt;')

else:

para?i,?subv?in?enumerate(v):

sb.append('lt;trgt; ')

if?i?==?0:

sb.append('lt;td?rowspan="{}"?align = "center"gt;{} lt;/tdgt;'.format(

len(v),?k))

sb.append(tdform(subv))

sb. append('lt;/trgt;')

fn?=?'table.html'

ss?=?sa?\n'.join(sb)? sc

prueba:

from?bs4?import?BeautifulSoup

soup?=?BeautifulSoup(ss)

ss?=? sopa.prettify()

excepto:

pasar

con?open(fn,?' w')?as?f:

f.write(ss)

print(ss)

print('Demo:?file://' joinpath(abspath(dirname(__file__)),?fn) )