2017-07-01 5 views
1

このコードスニペットは、1つの長い行です。 URLに複数の行が表示されるように、どうすればいいですか??私は.prettifyが必要だと思うが、この文脈でそれを使う方法を理解できなかった。 .prettifyが解決策ではない場合は、もちろん私は提案にオープンしています。1行を複数行にする方法。

import bs4 as bs 
import urllib.request 

test = urllib.request.urlopen('https://packetstormsecurity.com/files/143165/FASM-1.7.21-Buffer-Overflow.html').read() 
soup = bs.BeautifulSoup(test, 'lxml') 

output = soup.find('pre') 
print(output.code.text) 
+0

投稿正確な予想結果 – RomanPerekhrest

+0

これはすべてです。 'what'を' code'タグで表示しようとしていますが、フォーマットを失うことはありません。それは単一の文字列として出てくる。 –

答えて

1

strings propertyあなたが反復するラインは(<br>で区切られた)ことができますを使用します。何をしたいあなたを与える改行(\n)によってそれらに参加:

print('\n'.join(output.code.strings)) 

または行を反復処理し、それらを印刷:

for line in output.code.strings: 
    print(line) 

を改行で<br>秒を置き換える:

for br in output.code.find_all('br'): 
    br.replace_with('\n') 
print(output.code) 
関連する問題