2010-10-06 13 views
7

मेरे पास एक साधारण स्क्रिप्ट है जहां मैं एक HTML पृष्ठ ला रहा हूं, इसे सभी स्क्रिप्ट और स्टाइल टैग को हटाने के लिए सुंदर सूप में पास कर रहा हूं, फिर मैं HTML परिणाम को किसी अन्य विधि में पास करना चाहता हूं। क्या इसे करने का कोई आसान तरीका है? सुंदर Soup.py को स्किमिंग, मैंने इसे अभी तक नहीं देखा है।सुंदर सूप के साथ स्क्रिप्ट और स्टाइल टैग से छीन लिया गया HTML प्राप्त करना?

soup = BeautifulSoup(html) 
for script in soup("script"): 
    soup.script.extract() 

for style in soup("style"): 
    soup.style.extract() 
contents = soup.html.contents 
text = loader.extract_text(contents) 

सामग्री = soup.html.contents सिर्फ एक सूची प्राप्त करता है और सब कुछ कक्षाओं में परिभाषित किया जाता है। क्या सूप के बाद कच्ची एचटीएमएल वापस आती है? या क्या मुझे contents सूची के माध्यम से जाने की आवश्यकता है और स्क्रिप्ट & शैली टैग को छोड़कर HTML को वापस एक साथ टुकड़ा करना है?

या क्या मैं चाहता हूं कि पूरा करने के लिए एक बेहतर समाधान है?

उत्तर

8

unicode(soup) आपको एचटीएमएल देता है।

for elem in soup.findAll(['script', 'style']): 
    elem.extract() 
+0

हा:

इसके अलावा क्या आप चाहते हैं यह है। बहुत आसन। धन्यवाद! – Nathan

+0

सुंदर सोपा – Yarin

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