From d67fa392a30a469a618298dacd28132bbca7f774 Mon Sep 17 00:00:00 2001
From: AbdullahM0hamed <25087116+AbdullahM0hamed@users.noreply.github.com>
Date: Wed, 20 Jan 2021 22:46:11 +0000
Subject: [PATCH] Fix 4anime
---
anime_downloader/sites/_4anime.py | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/anime_downloader/sites/_4anime.py b/anime_downloader/sites/_4anime.py
index 4d74737..81afb47 100644
--- a/anime_downloader/sites/_4anime.py
+++ b/anime_downloader/sites/_4anime.py
@@ -1,4 +1,5 @@
import logging
+import re
from anime_downloader.sites.anime import Anime, AnimeEpisode, SearchResult
from anime_downloader.sites import helpers
from anime_downloader.const import HEADERS
@@ -17,7 +18,8 @@ class Anime4(Anime, sitename='4anime'):
"asid": 1,
"options": "qtranslate_lang=0&set_intitle=None&customset%5B%5D=anime"
}
- soup = helpers.soupify(helpers.post("https://4anime.to/wp-admin/admin-ajax.php", data=data)).select('div.info > a')
+ soup = helpers.soupify(helpers.post(
+ "https://4anime.to/wp-admin/admin-ajax.php", data=data)).select('div.info > a')
search_results = [
SearchResult(
@@ -29,7 +31,8 @@ class Anime4(Anime, sitename='4anime'):
return search_results
def _scrape_episodes(self):
- soup = helpers.soupify(helpers.get(self.url)).select('ul.episodes.range.active > li > a')
+ soup = helpers.soupify(helpers.get(self.url)).select(
+ 'ul.episodes.range.active > li > a')
return [x['href'] for x in soup]
def _scrape_metadata(self):
@@ -42,9 +45,16 @@ class Anime4(Anime, sitename='4anime'):
class Anime4Episode(AnimeEpisode, sitename='4anime'):
def _get_sources(self):
- self.headers = {'user-agent': HEADERS[self.hash_url(self.url, len(HEADERS))]}
+ self.headers = {
+ 'user-agent': HEADERS[self.hash_url(self.url, len(HEADERS))]}
resp = helpers.get(self.url, headers=self.headers)
- stream_url = helpers.soupify(resp).find('div', class_='videojs-desktop').find('source')['src']
+
+ # E.g. document.write( ' Download' );
+ stream_url = helpers.soupify(
+ re.search("(