का उपयोग करके विकल्प टेक्स्ट कैसे प्राप्त करें I निम्नलिखित HTML में विकल्प टेक्स्ट प्राप्त करने के लिए सुंदर सूप का उपयोग करना चाहता हूं। उदाहरण के लिए: मैं 2002/12, 2003/12 आदि प्राप्त करना चाहता हूंसुंदर सूप
<select id="start_dateid">
<option value="0">2002/12</option>
<option value="1">2003/12</option>
<option value="2">2004/12</option>
<option value="3">2005/12</option>
<option value="4">2006/12</option>
<option value="5" selected="">2007/12</option>
<option value="6">2008/12</option>
<option value="7">2009/12</option>
<option value="8">2010/12</option>
<option value="9">2011/12</option>
</select>
सामग्री प्राप्त करने का सबसे अच्छा तरीका क्या है? अब मैं निम्नलिखित कोड का उपयोग कर रहा हूं लेकिन मुझे नहीं पता कि इसके लिए सुंदर सूप का उपयोग कैसे करें। यदि HTML फ़ाइल में एक से अधिक चयनित क्षेत्र हैं, तो परिणाम गलत होगा। यहां मेरे पास अब तक है:
import urllib2
from bs4 import BeautifulSoup
import lxml
soup = BeautifulSoup(urllib2.urlopen("./test.html").read(),"lxml");
for item in soup.find_all('option'):
print(''.join(str(item.find(text=True))));
'stripped_strings' जवाब समस्याएं खड़ी कर सकता है, तो देखते हैं गैर'
@jdotjdot: 'select' में केवल' optgroup' और 'option' टैग की अनुमति है, केवल * टेक्स्ट * आपको' select' में मिलेगा 'विकल्प' टैग 'के भीतर टेक्स्ट है। 'चयन' में आप किस अन्य पाठ की अपेक्षा कर रहे थे? –
मुझे 'लिखित' में कुछ और की उम्मीद नहीं है, बस लिखित साइटों से डेटा खनन के वर्षों से, मैं अवैध HTML के खिलाफ सुरक्षा कर रहा हूं। सिर्फ इसलिए कि 'select' में कुछ और नहीं होना चाहिए इसका मतलब यह नहीं है कि वहां नहीं होगा। – jdotjdot