मुझे हमारी आंतरिक प्रक्रियाओं में से एक को स्वचालित करने के लिए हमारी कंपनी के इंट्रानेट पर एक बहुत ही सरल पृष्ठ को स्क्रैप करना होगा (किसी फ़ंक्शन के आउटपुट को सफल या नहीं लौटाएं)।PyQt4 के साथ जावास्क्रिप्ट संचालित वेब पेज स्क्रैपिंग - प्रमाणीकरण की आवश्यकता वाले पृष्ठों तक कैसे पहुंचे?
मैं निम्न उदाहरण पाया:
import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *
from PyQt4.QtWebKit import *
class Render(QWebPage):
def __init__(self, url):
self.app = QApplication(sys.argv)
QWebPage.__init__(self)
self.loadFinished.connect(self._loadFinished)
self.mainFrame().load(QUrl(url))
self.app.exec_()
def _loadFinished(self, result):
self.frame = self.mainFrame()
self.app.quit()
url = 'http://sitescraper.net'
r = Render(url)
html = r.frame.toHtml()
http://blog.sitescraper.net/2010/06/scraping-javascript-webpages-in-python.html से और यह लगभग एकदम सही है। मुझे बस पृष्ठ देखने के लिए प्रमाणीकरण प्रदान करने में सक्षम होना चाहिए।
मैं पीईक्यूटी 4 के लिए प्रलेखन देख रहा हूं और मैं स्वीकार करूँगा कि यह मेरे सिर पर है। अगर कोई मदद कर सकता है, तो मैं इसकी सराहना करता हूं।
संपादित करें: दुर्भाग्य से gruszczy की विधि मेरे लिए काम नहीं करती है। जब मैं urllib2 के माध्यम से ऐसी ही कुछ किया था, मैं निम्नलिखित कोड का इस्तेमाल किया और यह काम किया ...
username = 'user'
password = 'pass'
req = urllib2.Request(url)
base64string = base64.encodestring('%s:%s' % (username, password))[:-1]
authheader = "Basic %s" % base64string
req.add_header("Authorization", authheader)
handle = urllib2.urlopen(req)
यह सुनिश्चित नहीं था कि यहां टिप्पणी क्षेत्र में कोड को सही तरीके से कैसे प्रारूपित किया जाए, इसलिए मैंने ऊपर दिए गए प्रश्न को संपादित किया। – merph
तब मुझे डर है कि मुझे नहीं पता कि यह कैसे करें: -/ – gruszczy
यह अच्छा है, वैसे भी टाइप करें। तुमने मुझे सही रास्ते पर स्थापित किया। – merph