aboutsummaryrefslogtreecommitdiffstats
path: root/livie.py
diff options
context:
space:
mode:
Diffstat (limited to 'livie.py')
-rw-r--r--livie.py39
1 files changed, 15 insertions, 24 deletions
diff --git a/livie.py b/livie.py
index 515ed12..50e3646 100644
--- a/livie.py
+++ b/livie.py
@@ -1,39 +1,30 @@
"""This module does render video"""
import sys
+import json
import requests
-from bs4 import BeautifulSoup
-URL = 'https://yt.conocimientoslibres.ga/youtube.com/'
+URL = 'https://youtube-scrape.herokuapp.com'
INPUT = sys.argv[1]
-FILTER = '&type=1'
-SEARCH = '%ssearch?query=%s%s' % (URL, INPUT, FILTER)
+SEARCH = '%s/api/search?q=%s' % (URL, INPUT)
REQUEST = requests.get(SEARCH)
-SOUP = BeautifulSoup(REQUEST.content, 'lxml', from_encoding=REQUEST.encoding)
-# skip line loop
FIRST = True
-articles = SOUP.find_all('article', class_="item-box")
+data = json.loads(REQUEST.content.decode('utf-8'))
+items = data['results']
+# with open('output.json', 'w') as json_file:
+# json.dump(items, json_file)
-def check(label):
- if label is None:
- data = 'Unknown'
- else:
- data = label.text
- return data
-
-
-for article in articles:
+for item in items:
try:
- title = check(article.h4)
- link = article.a['href'].replace('/', '', 1)
- author = check(article.address)
- time = check(article.p)
- uploaded = check(article.span)
- views = check(article.find('div', class_="views"))
-
- except TypeError:
+ title = item['video']['title']
+ link = item['video']['url']
+ author = item['uploader']['username']
+ time = item['video']['duration']
+ uploaded = item['video']['upload_date']
+ views = item['video']['views']
+ except KeyError:
continue
if FIRST: