python - how to get the second sub-element? -


कृपया स्क्रिप्ट को ठीक करने में मदद करें।

<पूर्व> आयात urllib.request आयात urllib.parse आयात आयात आयात अनुरोध आयात करें bs4 startIndex = 1000 endIndex = 1010 उपसर्ग = "http://www.inpic.ru" श्रेणी के लिए मैं (startIndex, EndIndex): req = requests.get (उपसर्ग + '/ छवि /' + (str) मैं अगर req.status_code == requests.codes.ok: print (i, '\ t', req.status_code, '\ t ', रेक, एंड =' \ n ') सूप = बीएस 4। खूबसूरत सूप (रीक कंटेंट) # प्रिंट (सूप। अलंकार ()) नाम = सूप.फिंड ("टीडी", {"class": "post_title"}) सामग्री [1] .contents = soup.find ("td", {"class": "post_title"})। सामग्री [2] .contents [1] .contents #name = प्रतिस्थापित करें (नाम, '/', '_') प्रिंट (नाम, '\ t', लेखक)

त्रुटि संदेश:

  ट्रेसबैक (सबसे हाल ही में कॉल अंतिम): फ़ाइल "सी : \ VINT \ OPENSERVER \ OpenServer \ domains \ localhost \ python \ parse_html \ 1 \ q.py ", पंक्ति 1 9, में & lt; मॉड्यूल & gt; लेखक = soup.find ("td", {"class": "post_title"})। सामग्री [2] .contents [1] .contents फ़ाइल "C: \ Python33 \ lib \ site-packages \ bs4 \ element.py ", लाइन 675, __getattr__ स्व .__ कक्षा __.__ नाम__, एट्रि में)) विशेषता: 'नेविगेट करने योग्य स्ट्रिंग' ऑब्जेक्ट में कोई विशेषता 'सामग्री' नहीं है  

समस्या यह है कि सामग्री की सूची असंभव है कक्षा "date_author" के साथ एक तत्व का मुझे केवल "कमेटी" (अगले सिबलिंग आदि) आदेश का उपयोग करने की आवश्यकता नहीं है

उपयोग करें

  soup.find ("td", {"class": "post_title"})। सामग्री [1]। स्ट्रिंग  

के रूप में soup.find ( "टीडी", {"class": "post_title"})। सामग्री [1] एक नेविगबल स्ट्रिंग है।


Comments