lxml.html удобнее для управления HTML, ИМО. Вот код, который удалит второй столбец таблицы HTML.
from lxml import html
text = """
<table>
<tr><th>head 1</th><th>head 2</th><th>head 3</th></tr>
<tr><td>item 1</td><td>item 2</td><td>item 3</td></tr>
</table>
"""
table = html.fragment_fromstring(text)
# remove middle column
for row in table.iterchildren():
row.remove(row.getchildren()[1])
print html.tostring(table, pretty_print=True)
Результат:
<table>
<tr>
<th>head 1</th>
<th>head 3</th>
</tr>
<tr>
<td>item 1</td>
<td>item 3</td>
</tr>
</table>
Спасибо за ответ. К сожалению, версия lxml, которая у меня не поддерживалась, была отключена, и серверы с кодами не работают, поэтому я не смог обновить. Я закончил тем, что просто использовал beautifulsoup, потому что оказалось, что каждая ячейка в этом столбце имела на нем специальный класс, поэтому его легко удалить с помощью имени класса. – jedberg