簡體   English   中英

如何將抓取的數據寫入經過調整的列中?

[英]How to write scraped data into well adjusted columns?

我目前正在使用BeautifulSoup抓取數據,並且正在嘗試將抓取的數據寫入文件中,以便在其中進行調整良好的列。

這是我當前的代碼產生的內容:

1997       Fisrt Round         Sampras, Pete       Reneberg, Richey        4-6, 6-4, 6-3, 6-3
1997       Fisrt Round         Philippoussis, Mark       Frana, Javier        4-6, 6-4, 6-3, 6-3
1997       Fisrt Round         Goossens, Kris       Black, Byron        4-6, 6-4, 6-3, 6-3
...

我希望輸出看起來像這樣:

1997       Fisrt Round         Sampras, Pete             Reneberg, Richey        4-6, 6-4, 6-3, 6-3
1997       Fisrt Round         Philippoussis, Mark       Frana, Javier           4-6, 6-4, 6-3, 6-3
1997       Fisrt Round         Goossens, Kris            Black, Byron            4-6, 6-4, 6-3, 6-3
...

這是我的代碼:

for tournamentYear_url in tournamentYear_urls:
    i = 0
    tournamentYear+=1
    soup = make_soup(tournamentYear_url)
    while i < len(get_player_name_first_round(soup)):
        mon_fichier.write(str(tournamentYear) + "       ")
        mon_fichier.write(str("Fisrt Round         "))
        mon_fichier.write(get_player_name_first_round(soup)[i] + "       ")
        mon_fichier.write(get_player_name_first_round(soup)[i+1] + "        ")
        mon_fichier.write(get_player_score_first_round_winner(soup) + "\n")
        i+=2

看看Python的Format Specification Mini-Language

有一部分專門關於文本對齊和字段寬度/填充:

'<' -強制字段在可用空間內左對齊(這是大多數對象的默認設置)。

'>' -強制字段在可用空間內右對齊(這是數字的默認值)。

'=' -強制將填充放置在符號(如果有)之后但在數字之前。 這用於以“ +000000120”形式打印字段。 此對齊選項僅對數字類型有效。

'^' -強制字段在可用空間內居中。

以及文檔中有關如何使用format()的一些示例:

>>> '{:<30}'.format('left aligned')
'left aligned                  '
>>> '{:>30}'.format('right aligned')
'                 right aligned'
>>> '{:^30}'.format('centered')
'           centered           '
>>> '{:*^30}'.format('centered')  # use '*' as a fill char
'***********centered***********'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM