के साथ HTML-फ़ाइलों से डेटा निकालने के लिए मुझे HTML-files से डेटा निकालने की आवश्यकता है। प्रश्न में फाइलें, सबसे अधिक संभावना है, स्वचालित रूप से जेनरेट की जाती हैं। मैंने इन फ़ाइलों में से एक का कोड पेस्टबिन में अपलोड किया है: http://pastebin.com/9Nj2Edfv। यह वास्तविक पृष्ठ का लिंक है: http://eur-lex.europa.eu/Notice.do?checktexts=checkbox&val=60504%3Acs&pos=1&page=1&lang=en&pgs=10&nbl=1&list=60504%3Acs%2C&hwords=&action=GO&visu=%23texteसुंदर सूप और पायथन
मुझे निकालने की आवश्यकता वाले डेटा को अलग-अलग शीर्षकों के अंतर्गत पाया जाता है।
यह वही है मैं अब तक है:
from BeautifulSoup import BeautifulSoup
ecj_data = open("data\ecj_1.html",'r').read()
soup = BeautifulSoup(ecj_data)
celex = soup.find('h1')
auth_lang = soup('ul', limit=14)[13].li
procedure = soup('ul', limit=20)[17].li
print "Celex number:", celex.renderContents(),
print "Authentic language:", auth_lang
print "Type of procedure:", procedure
मैं सभी डेटा स्थानीय रूप से संग्रहीत जो कारण यह फ़ाइल ecj_1.html खोलता है।
सेलेक्स नंबर और प्रामाणिक भाषा कुछ हद तक अच्छा काम करती है।
CELEX रिटर्न
"Celex number:
61977J0059"
auth_lang रिटर्न "Authentic language: <li>French</li>"
मैं सिर्फ H1 टैग (नहीं अंत में छुट्टी) की सामग्री की जरूरत है।
[इसके अलावा, मैं सिर्फ "फ्रेंच" लौटने के लिए auth_lang, और नहीं <li>
-tags की जरूरत है।] यह एक समस्या अब और नहीं है। मुझे एहसास हुआ कि मैं "auth_lang" के अंत में ".text" जोड़ सकता हूं। दूसरी ओर
प्रक्रिया इस रिटर्न:
Type of procedure: <li>
<strong>Type of procedure:</strong>
<br />
Reference for a preliminary ruling
</li>
जो काफी गलत है के रूप में मैं सिर्फ यह की जरूरत है "संदर्भ एक प्रारंभिक सत्तारूढ़ के लिए" वापस जाने के लिए।
क्या कोई तरीका है जिससे मैं इसे प्राप्त कर सकता हूं?
दूसरा संपादित करें: मैं celex = soup('h1', limit=2)[0]
साथ celex = soup.find('h1')
प्रतिस्थापित और प्रिंट CELEX को .text
गयी।
Fraxel: आपको बहुत बहुत धन्यवाद! यह एक सम्मोहन की तरह काम करता है। विचार किसी भी तरह से इस फ़ाइल के आउटपुट को डेटाबेस में स्थानांतरित करना है। मेरा मानना है कि आपने भविष्य की समस्या का समाधान किया होगा जब आपने मुझे दिखाया कि न्यूलाइन से कैसे छुटकारा पाना है क्योंकि वे बाद में कुछ खराब कर सकते हैं। फिर से धन्यवाद! – A2D2