मैं वेब स्क्रैपर्स बनाना सीख रहा हूं और एक व्यक्तिगत प्रोजेक्ट के लिए TripAdvisor को स्क्रैप करना चाहता हूं, urllib2 का उपयोग करके एचटीएमएल को पकड़ना। हालांकि, मैं एक समस्या में भाग रहा हूं, जहां नीचे दिए गए कोड का उपयोग कर रहा है, एचटीएमएल वापस आ गया है, यह सही नहीं है क्योंकि पेज रीडायरेक्ट करने के लिए एक सेकंड लेता है (आप यूआरएल पर जाकर इसे सत्यापित कर सकते हैं) - इसके बजाय मुझे मिलता है उस पृष्ठ से कोड जो प्रारंभ में संक्षिप्त रूप से प्रकट होता है।पायथन urllib2 - स्क्रैपिंग से पहले लोडिंग/पुनर्निर्देशन को समाप्त करने के लिए पृष्ठ की प्रतीक्षा करें?
क्या यह सुनिश्चित करने के लिए सेट करने के लिए कुछ व्यवहार या पैरामीटर है कि पृष्ठ पूरी तरह से वेबसाइट सामग्री प्राप्त करने से पहले लोडिंग/पुनर्निर्देशन समाप्त हो गया है?
import urllib2
from bs4 import BeautifulSoup
bostonPage = urllib2.urlopen("http://www.tripadvisor.com/HACSearch?geo=34438#02,1342106684473,rad:S0,sponsors:ABEST_WESTERN,style:Szff_6")
soup = BeautifulSoup(bostonPage)
print soup.prettify()
संपादित करें: जवाब है, पूरी तरह से है, लेकिन, अंत क्या मेरी समस्या यह था हल में:, https://stackoverflow.com/a/3210737/1157283
does not को urllib एक त्रुटि बढ़ा? ऐसे मामलों के लिए एक रीडायरेक्ट डायरेक्टर है ... –
@DonQuestion कोई त्रुटि नहीं, मुझे बस उस पृष्ठ से HTML प्राप्त होता है जो रीडायरेक्ट होने से पहले संक्षिप्त रूप से प्रकट होता है। मैं उस पृष्ठ से एचटीएमएल चाहता हूं जो अंत में दिखाई देता है। यह रीडायरेक्ट डायरेक्टर क्या है, क्या आप विस्तारित कर सकते हैं? – Ken
यदि आप urlopen का उपयोग करते हैं, तो आप openerDirector.open() को पायथन-डॉक्स पर देख रहे हैं - दुर्भाग्य से यह 2-3 शब्दों में समझाया नहीं गया है :-(: http://docs.python.org/library/urllib2.html? हाइलाइट = urllib2 # urllib2.OpenerDirector –