#!/usr/bin/env python # -*- coding: UTF-8 -*- # # Imports # from __future__ import absolute_import from future import standard_library standard_library.install_aliases() from builtins import str from builtins import object import os import requests import sys import urllib.request, urllib.parse, urllib.error import re import html.parser import xbmcgui import xbmcplugin from .hak5_const import ADDON, LANGUAGE, IMAGES_PATH, HEADERS, convertToUnicodeString, log, getSoup # # Main class # class Main(object): # # Init # def __init__(self): # Get the command line arguments # Get the plugin url in plugin:// notation self.plugin_url = sys.argv[0] # Get the plugin handle as an integer number self.plugin_handle = int(sys.argv[1]) log("ARGV", repr(sys.argv)) # Parse parameters self.video_list_page_url = urllib.parse.parse_qs(urllib.parse.urlparse(sys.argv[2]).query)['url'][0] self.next_page_possible = urllib.parse.parse_qs(urllib.parse.urlparse(sys.argv[2]).query)['next_page_possible'][0] self.video_list_page_url = str(self.video_list_page_url).replace('https', 'http') log("self.video_list_page_url", self.video_list_page_url) if self.next_page_possible == 'True': # Determine current item number, next item number, next_url pos_of_page = self.video_list_page_url.rfind('page/') if pos_of_page >= 0: page_number_str = str( self.video_list_page_url[pos_of_page + len('page/'):pos_of_page + len('page/') + len('000')]) page_number = int(page_number_str) page_number_next = page_number + 1 if page_number_next >= 100: page_number_next_str = str(page_number_next) elif page_number_next >= 10: page_number_next_str = '0' + str(page_number_next) else: page_number_next_str = '00' + str(page_number_next) self.next_url = str(self.video_list_page_url).replace(page_number_str, page_number_next_str) log("self.next_url", self.next_url) # # Get the videos... # self.getVideos() # # Get videos... # def getVideos(self): # # Init # previous_video_page_url = '' after_tab_episodes = False # Create a list for our items. listing = [] # # Get HTML page # response = requests.get(self.video_list_page_url, headers=HEADERS) html_source = response.text html_source = convertToUnicodeString(html_source) # Parse response soup = getSoup(html_source) # log("html_source", html_source) #