7

मैं वेब से एक टेबल स्क्रैप करना चाहता हूं और & nbsp; संस्थाएं बरकरार हैं ताकि मैं बाद में HTML के रूप में पुन: प्रकाशित कर सकूं। प्रतीत होता है कि सुंदर सूप इन जगहों पर स्थानांतरित कर रहा है। उदाहरण:खूबसूरत सूप का उपयोग करके स्क्रैप   इकाइयों

from bs4 import BeautifulSoup 

html = "<html><body><table><tr>" 
html += "<td>&nbsp;hello&nbsp;</td>" 
html += "</tr></table></body></html>" 

soup = BeautifulSoup(html) 
table = soup.find_all('table')[0] 
row = table.find_all('tr')[0] 
cell = row.find_all('td')[0] 

print cell 

मनाया परिणाम:

<td> hello </td> 

आवश्यक परिणाम:

<td>&nbsp;hello&nbsp;</td> 

उत्तर

5

BS4 में convertEntities BeautifulSoup निर्माता के लिए पैरामीटर अब समर्थित नहीं है। एचटीएमएल इकाइयां हमेशा संबंधित यूनिकोड वर्णों में परिवर्तित होती हैं (docs देखें)।

डॉक्स के अनुसार, आप एक आउटपुट फ़ॉर्मेटर उपयोग करने की आवश्यकता इस तरह:

print soup.find_all('td')[0].prettify(formatter="html") 
+0

जवाब के लिए धन्यवाद :) –

संबंधित मुद्दे