From 84d98e2b7aa9da4ffcbe613d0ebbea5cf5e9eebb Mon Sep 17 00:00:00 2001
From: Richard Mwewa <74001397+rly0nheart@users.noreply.github.com>
Date: Sat, 1 Oct 2022 12:53:34 +0200
Subject: [PATCH 1/5] Create .nomedia
---
downloads/.nomedia | 1 +
1 file changed, 1 insertion(+)
create mode 100644 downloads/.nomedia
diff --git a/downloads/.nomedia b/downloads/.nomedia
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/downloads/.nomedia
@@ -0,0 +1 @@
+
From 3bd94e9cc010a98b747c391bd1ccb14927cb1c00 Mon Sep 17 00:00:00 2001
From: Richard Mwewa <74001397+rly0nheart@users.noreply.github.com>
Date: Sat, 1 Oct 2022 12:54:29 +0200
Subject: [PATCH 2/5] Delete .idea directory
---
.../inspectionProfiles/profiles_settings.xml | 6 ---
.idea/workspace.xml | 39 -------------------
2 files changed, 45 deletions(-)
delete mode 100644 .idea/inspectionProfiles/profiles_settings.xml
delete mode 100644 .idea/workspace.xml
diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml
deleted file mode 100644
index 105ce2d..0000000
--- a/.idea/inspectionProfiles/profiles_settings.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
deleted file mode 100644
index d133804..0000000
--- a/.idea/workspace.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1664618714345
-
-
- 1664618714345
-
-
-
-
\ No newline at end of file
From a390bd6bd830038398e09652fbc8846720ffc2cc Mon Sep 17 00:00:00 2001
From: Richard Mwewa <74001397+rly0nheart@users.noreply.github.com>
Date: Sat, 1 Oct 2022 12:55:29 +0200
Subject: [PATCH 3/5] Create python-app.yml
---
.github/workflows/python-app.yml | 39 ++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
create mode 100644 .github/workflows/python-app.yml
diff --git a/.github/workflows/python-app.yml b/.github/workflows/python-app.yml
new file mode 100644
index 0000000..90422fd
--- /dev/null
+++ b/.github/workflows/python-app.yml
@@ -0,0 +1,39 @@
+# This workflow will install Python dependencies, run tests and lint with a single version of Python
+# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
+
+name: Python application
+
+on:
+ push:
+ branches: [ "master" ]
+ pull_request:
+ branches: [ "master" ]
+
+permissions:
+ contents: read
+
+jobs:
+ build:
+
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v3
+ - name: Set up Python 3.10
+ uses: actions/setup-python@v3
+ with:
+ python-version: "3.10"
+ - name: Install dependencies
+ run: |
+ python -m pip install --upgrade pip
+ pip install flake8 pytest
+ if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
+ - name: Lint with flake8
+ run: |
+ # stop the build if there are Python syntax errors or undefined names
+ flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
+ # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
+ flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
+ - name: Test with pytest
+ run: |
+ pytest test_download_video.py
From add75f2a2e020ce259b7f75e0c0e25149e803c2d Mon Sep 17 00:00:00 2001
From: Richard Mwewa <74001397+rly0nheart@users.noreply.github.com>
Date: Sat, 1 Oct 2022 12:56:36 +0200
Subject: [PATCH 4/5] Create requirements.txt
---
requirements.txt | 3 +++
1 file changed, 3 insertions(+)
create mode 100644 requirements.txt
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..f721993
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,3 @@
+tqdm
+selenium
+requests
From d734cba88c50a0ef8519f63791ce43b451392886 Mon Sep 17 00:00:00 2001
From: Richard Mwewa <74001397+rly0nheart@users.noreply.github.com>
Date: Mon, 3 Oct 2022 16:11:06 +0200
Subject: [PATCH 5/5] Update downloader.py
---
downloader.py | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/downloader.py b/downloader.py
index 6475c74..dc10aca 100644
--- a/downloader.py
+++ b/downloader.py
@@ -6,6 +6,8 @@ from tqdm import tqdm
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
+from selenium.webdriver.support.ui import WebDriverWait
+from selenium.webdriver.support import expected_conditions
option = webdriver.FirefoxOptions()
@@ -63,7 +65,7 @@ def download_video(url, output):
Audio: "/html/body/div[2]/div/div/div[1]/div/div[2]/div/div[3]/p[3]/a"
"""
- download_btn = driver.find_element(By.XPATH, '/html/body/div[2]/div/div/div[1]/div/div[2]/div/div[3]/p[1]/a') # Find the download button (this clicks the first button which returns a video in hd)
+ download_btn = WebDriverWait(driver, 20).until(expected_conditions.presence_of_element_located((By.XPATH, '/html/body/div[2]/div/div/div[1]/div/div[2]/div/div[3]/p[1]/a'))) # Find the download button (this clicks the first button which returns a video in hd)
download_url = download_btn.get_attribute('href')
with requests.get(download_url, stream=True) as response:
@@ -94,4 +96,5 @@ if __name__ == "__main__":
print('Process interrupted with Ctrl+C.')
except Exception as e:
- print('An error occured:', e)
\ No newline at end of file
+ print('An error occured:', e)
+