def _set_cookie(self, url): if self.use_cookie: if os.path.isfile(self.use_cookie): cookie_arr = QtNetwork.QNetworkCookieJar() c = [] f = open(self.use_cookie, 'r') lines = f.readlines() f.close() for i in lines: k = re.sub('\n', '', i) l = k.split(' ') d = QtNetwork.QNetworkCookie() d.setDomain(l[0]) if l[1] == 'TRUE': l1 = True else: l1 = False d.setHttpOnly(l1) d.setPath(l[2]) if l[3] == 'TRUE': l3 = True else: l3 = False d.setSecure(l3) l4 = int(l[4]) print(l4) d.setExpirationDate(QtCore.QDateTime.fromTime_t(l4)) d.setName(bytes(l[5], 'utf-8')) d.setValue(bytes(l[6], 'utf-8')) c.append(d) #cookie_arr.append(d) cookie_arr.setAllCookies(c) self.nam = NetManager(self, url, self.print_request, self.block_request, self.default_block, self.select_request, self.get_link) self.nam.setCookieJar(cookie_arr) else: self.cookie = QtNetwork.QNetworkCookieJar() self.nam = NetManager(self, url, self.print_request, self.block_request, self.default_block, self.select_request, self.get_link) self.nam.setCookieJar(self.cookie) else: if self.set_cookie: if os.path.isfile(self.set_cookie): os.remove(self.set_cookie) self.cookie = QtNetwork.QNetworkCookieJar() self.nam = NetManager(self, url, self.print_request, self.block_request, self.default_block, self.select_request, self.get_link) self.nam.setCookieJar(self.cookie) x = '' self.nam.netS.connect(lambda y=x: self.url_link(y))
def showEvent(self, event): """Loading URL once dialog has shown, also reseting cookie jar""" # pylint: disable=C0103 QDialog.showEvent(self, event) self.cookies = QtNetwork.QNetworkCookieJar() self.nam.setCookieJar(self.cookies) self.web_view.load(self.url)
def __init__(self, state_path, initial_url, username, password, form_values): QtWidgets.QMainWindow.__init__(self, None) self._state_path = state_path self._initial_url = initial_url self._username = username self._password = password self._form_values = form_values self.tabs = QtWidgets.QTabWidget( self, tabsClosable=True, movable=True, elideMode=QtCore.Qt.ElideRight, tabCloseRequested=lambda idx: self.tabs.removeTab(idx)) self.tabs.setTabBarAutoHide(True) self.setCentralWidget(self.tabs) self.tabWidgets = [] self._cookies = QtNetwork.QNetworkCookieJar() self._load_cookies() self.add_tab(QtCore.QUrl(self._initial_url))
def hideEvent(self, event): """Once dialog has closed, cleaning up cookie-jar""" # pylint: disable=C0103 self.cookies = QtNetwork.QNetworkCookieJar() self.nam.setCookieJar(self.cookies) QDialog.hideEvent(self, event)
def Browse(self,url,quality): if 'animeget' in url or 'masterani' in url or 'animeplace' in url or 'moetube' in url or 'nyaa' in url: content = ccurl(url) else: content = 'checking_browser' if 'checking_browser' in content: if not os.path.exists(self.cookie_file): self.cookie = QtNetwork.QNetworkCookieJar() self.nam = NetWorkManager() self.nam.setCookieJar(self.cookie) else: cookie_arr = QtNetwork.QNetworkCookieJar() c = [] f = open(self.cookie_file,'r') lines = f.readlines() f.close() for i in lines: k = re.sub('\n','',i) l = k.split(' ') d = QtNetwork.QNetworkCookie() d.setDomain(l[0]) if l[1]== 'TRUE': l1= True else: l1= False d.setHttpOnly(l1) d.setPath(l[2]) if l[3]== 'TRUE': l3= True else: l3= False d.setSecure(l3) l4 = int(l[4]) print(l4) d.setExpirationDate(QtCore.QDateTime.fromTime_t(l4)) d.setName(bytes(l[5],'utf-8')) d.setValue(bytes(l[6],'utf-8')) c.append(d) #cookie_arr.append(d) cookie_arr.setAllCookies(c) self.nam = NetWorkManager() self.nam.setCookieJar(cookie_arr) self.web = Browser(url,quality,self.cookie_file) self.tab_2 = QtWidgets.QWidget() self.tab_2.setMaximumSize(300,50) self.tab_2.setWindowTitle('Wait!') self.horizontalLayout_5 = QtWidgets.QVBoxLayout(self.tab_2) print('Browse: '+url) self.horizontalLayout_5.addWidget(self.web) self.tab_2.show() #self.tab_2.hide() #self.web.show() self.web.page().setNetworkAccessManager(self.nam) self.web.load(QUrl(url)) cnt = 0 while(not os.path.exists(self.cookie_file) and cnt < 30): #print() print('wait Clouflare ') time.sleep(1) QtWidgets.QApplication.processEvents() cnt = cnt+1 self.tab_2.setWindowTitle('Wait! Cloudflare '+str(cnt)+'s') if cnt >= 30 and not os.path.exists(cookie_file): f = open(cookie_file,'w') f.close() lnk_file = os.path.join(self.tmp_dir,'lnk.txt') if os.path.exists(lnk_file): os.remove(lnk_file) cnt = 0 if ('kisscartoon' in url or 'kissasian' in url or 'kissanime' in url) and quality: while(not os.path.exists(lnk_file) and cnt < 30): print('wait Finding Link ') time.sleep(1) QtWidgets.QApplication.processEvents() cnt = cnt+1 self.tab_2.setWindowTitle('Link Resolving '+str(cnt)+'s') if os.path.exists(lnk_file): self.web.setHtml('<html>Link Obtained</html>') link = open(lnk_file).read() print(link) else: self.web.setHtml('<html>No Link Found</html>') print('No Link Available or Clear The Cache') else: self.web.setHtml('<html>cookie Obtained</html>') self.tab_2.hide() else: f = open(cookie_file,'w') f.close()
def clearCookie(self): self.network_manager.setCookieJar(QtNetwork.QNetworkCookieJar())
def __init__(self, ssb_config): super(SSBWindow, self).__init__() # Load Settings self.config = ssb_config self.settings = QtCore.QSettings("pyssb", self.config['name']) # Window Position self.setWindowTitle(self.config['title']) try: self.restoreGeometry(self.settings.value("geometry")) except: # Reasonable Defaults self.resize(900, 600) self.move(100, 100) ### Extra Browser Functionality self.search = SearchWidget(self) self.showSearch = QtWidgets.QShortcut( "Ctrl+F", self, activated=lambda: self.search.toggleSearch()) self.quit = QtWidgets.QShortcut("Ctrl+Q", self, activated=self.close) self.zoomIn = QtWidgets.QShortcut( "Ctrl++", self, activated=lambda: self.setZoomFactor(self.zoomFactor() + .2)) self.zoomIn2 = QtWidgets.QShortcut( "Ctrl+=", self, activated=lambda: self.setZoomFactor(self.zoomFactor() + .2)) self.zoomIn = QtWidgets.QShortcut( "Ctrl+-", self, activated=lambda: self.setZoomFactor(self.zoomFactor() - .2)) self.zoomOne = QtWidgets.QShortcut( "Ctrl+0", self, activated=lambda: self.setZoomFactor(1)) ### # Icon if not self.settings.value("icon"): try: try: favicon_url = self.config['favicon_url'] except: p = lassie.fetch(self.config['url']) for i in p['images']: if i['type'] == 'favicon': favicon_url = i['src'] break r = urlopen(favicon_url) f = r.read() self.settings.setValue('icon', f) except: f = None else: f = self.settings.value('icon') icon_img = QtGui.QImage.fromData(f) icon_pix = QtGui.QPixmap.fromImage(icon_img) self.setWindowIcon(QtGui.QIcon(icon_pix)) # Cookie Jar self.cookiejar = QtNetwork.QNetworkCookieJar(self) self.page().networkAccessManager().setCookieJar(self.cookiejar) # Load Cookies try: raw_cookies = pickle.loads(self.settings.value("cookies")) cookies = [] for r in raw_cookies: c = QtNetwork.QNetworkCookie.parseCookies(r) cookies.append(c[0]) self.cookiejar.setAllCookies(cookies) except: pass # Load Page self.load(QtCore.QUrl(self.config['url']))