2016-07-09 4 views
0

Я получаю текст из заголовка и атрибутов href из HTML. Код работает нормально, и я могу импортировать все это в PrettyTable. Проблема, с которой я сталкиваюсь сейчас, заключается в том, что есть некоторые заголовки, которые, я считаю, слишком велики для одного из ящиков в таблице и таким образом искажают весь сделанный PrettyTable. Я попытался настроить hrules, vrules и padding_width и не нашел разрешения.Как мне форматировать данные в PrettyTable?

from bs4 import BeautifulSoup 
from prettytable import PrettyTable 
import urllib 


r = urllib.urlopen('http://www.genome.jp/kegg-bin/show_pathway?map=hsa05215&show_description=show').read() 
soup = BeautifulSoup((r), "lxml") 


links = [area['href'] for area in soup.find_all('area', href=True)] 
titles = [area['title'] for area in soup.find_all('area', title=True)] 


k = PrettyTable() 
k.field_names = ["ID", "Active Compound", "Link"] 
c = 1 
for i in range(len(titles)): 
    k.add_row([c, titles[i], links[i]]) 
    c += 1 

print(k) 

Как я хотел бы всю таблицу для отображения как:

print (k.get_string(start=0, end=25)) 

Если PrettyTable не может это сделать. Существуют ли какие-либо другие рекомендуемые модули, которые могли бы это сделать?

ответ

0

Это не ошибка форматирования, а общий размер созданной таблицы был настолько большим, что в окне python не удалось разместить все значения на экране.

Это подтверждается изменением на гораздо меньший размер шрифта. Если это помогает любому, экспортирующему как .csv, то помогало организовать в Excel.

Смежные вопросы