Skip to content

Commit

Permalink
[FR - CNEWS] Fix Error 403
Browse files Browse the repository at this point in the history
  • Loading branch information
jeff2900 authored and joaopa00 committed Jan 30, 2025
1 parent 75358fb commit b20b804
Showing 1 changed file with 50 additions and 11 deletions.
61 changes: 50 additions & 11 deletions resources/lib/channels/fr/cnews.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from __future__ import unicode_literals

from builtins import str

import xbmcaddon
import htmlement
import urlquick
# noinspection PyUnresolvedReferences
Expand All @@ -29,6 +29,11 @@

GENERIC_HEADERS = {'User-Agent': web_utils.get_random_windows_ua()}

URLLIB3_ADDON = xbmcaddon.Addon('script.module.urllib3')
URLLIB3_VERSION = URLLIB3_ADDON.getAddonInfo('version')

if URLLIB3_VERSION == "2.2.3":
from urllib.request import urlopen, Request

# num Page

Expand Down Expand Up @@ -56,10 +61,17 @@ def list_categories(plugin, item_id, **kwargs):

@Route.register
def list_videos(plugin, item_id, category_url, page, **kwargs):
resp = urlquick.get(category_url % page, headers=GENERIC_HEADERS, verify=False, max_age=-1)
parser = htmlement.HTMLement()
parser.feed(resp.json())
data = parser.close()
if URLLIB3_VERSION == "2.2.3":
url_req = Request(URL_REPLAY_CNEWS, headers=GENERIC_HEADERS, method='GET')
resp = urlopen(url_req).read().decode('utf8')
parser = htmlement.HTMLement()
parser.feed(resp)
data = parser.close()
else:
resp = urlquick.get(category_url % page, headers=GENERIC_HEADERS, verify=False, max_age=-1)
parser = htmlement.HTMLement()
parser.feed(resp.json())
data = parser.close()

for video_datas in data.iterfind(".//div[@class='wrapper-article-middle']"):
exists_video = video_datas.find(".//div[@id='embed-main-video']")
Expand All @@ -82,8 +94,15 @@ def get_video_id(plugin, video_id, download_mode=False, **kwargs):

@Route.register
def list_emissions(plugin, item_id, category_url, page, **kwargs):
resp = urlquick.get(URL_REPLAY_CNEWS, headers=GENERIC_HEADERS, verify=False, max_age=-1)
data = resp.parse("div", attrs={"class": "les-emissions"})
if URLLIB3_VERSION == "2.2.3":
url_req = Request(URL_REPLAY_CNEWS, headers=GENERIC_HEADERS, method='GET')
resp = urlopen(url_req).read().decode('utf8')
parser = htmlement.HTMLement()
parser.feed(resp)
data = parser.close()
else:
resp = urlquick.get(URL_REPLAY_CNEWS, headers=GENERIC_HEADERS, verify=False, max_age=-1)
data = resp.parse("div", attrs={"class": "les-emissions"})

for video_datas in data.iterfind(".//a[@class='emission-item-wrapper']"):
item = Listitem()
Expand Down Expand Up @@ -121,8 +140,15 @@ def list_emissions_old(plugin, item_id, category_url, page, **kwargs):

@Route.register
def list_videos_emission(plugin, item_id, video_url, **kwargs):
resp = urlquick.get(video_url, headers=GENERIC_HEADERS, verify=False, max_age=-1)
root = resp.parse()
if URLLIB3_VERSION == "2.2.3":
url_req = Request(video_url, headers=GENERIC_HEADERS, method='GET')
resp = urlopen(url_req).read().decode('utf8')
parser = htmlement.HTMLement()
parser.feed(resp)
root = parser.close()
else:
resp = urlquick.get(video_url, headers=GENERIC_HEADERS, verify=False, max_age=-1)
root = resp.parse()

info = root.findall(".//p")[0].text
video_image = root.findall('.//img')[1].get('data-echo')
Expand Down Expand Up @@ -153,15 +179,28 @@ def list_videos_emission(plugin, item_id, video_url, **kwargs):

@Resolver.register
def get_video_url(plugin, item_id, video_url, download_mode=False, **kwargs):
root = urlquick.get(video_url, headers=GENERIC_HEADERS, verify=False, max_age=-1).parse()
if URLLIB3_VERSION == "2.2.3":
url_req = Request(video_url, headers=GENERIC_HEADERS, method='GET')
resp = urlopen(url_req).read().decode('utf8')
parser = htmlement.HTMLement()
parser.feed(resp)
root = parser.close()
else:
root = urlquick.get(video_url, headers=GENERIC_HEADERS, verify=False, max_age=-1).parse()

video_id = root.find(".//div[@id='embed-main-video']").get('data-videoid')

return resolver_proxy.get_stream_dailymotion(plugin, video_id, download_mode)


@Resolver.register
def get_live_url(plugin, item_id, **kwargs):
root = urlquick.get(URL_LIVE_CNEWS, headers=GENERIC_HEADERS, verify=False, max_age=-1).parse()
if URLLIB3_VERSION == "2.2.3":
url_req = Request(URL_LIVE_CNEWS, headers=GENERIC_HEADERS, method='GET')
root = urlopen(url_req).read().decode('utf8')
else:
root = urlquick.get(URL_LIVE_CNEWS, headers=GENERIC_HEADERS, verify=False, max_age=-1).parse()

try:
live_id = root.find(".//div[@data-muted='true']").get('data-videoid')
except Exception:
Expand Down

0 comments on commit b20b804

Please sign in to comment.