l1ving_youtube-dl/test/ci/test_facebook.py

80 lines
3.1 KiB
Python
Raw Normal View History

2020-06-17 16:25:11 +03:00
import unittest
import youtube_dl
2020-06-28 15:59:47 +03:00
from youtube_dl.utils import DownloadError
2020-06-17 16:25:11 +03:00
class facebookMetaData(unittest.TestCase):
2020-06-24 09:42:00 +03:00
def test_likes_metadata(self):
2020-06-17 16:25:11 +03:00
params = {}
url = "https://www.facebook.com/iihfhockey/videos/2742345396033296/"
ydl = youtube_dl.YoutubeDL(params)
info = ydl.extract_info(url, download=False)
2020-06-24 09:42:00 +03:00
self.assertGreater(info.get('like_count'), 200)
2020-06-17 16:25:11 +03:00
2020-06-24 09:42:00 +03:00
def test_reactions_metadata(self):
params = {}
url = "https://www.facebook.com/supercarblondie/videos/519426815548240/"
ydl = youtube_dl.YoutubeDL(params)
info = ydl.extract_info(url, download=False)
self.assertGreater(info.get('reactions_count'), 1000000)
self.assertGreater(info.get('like_count'), 800000)
def test_comments_live_video(self):
params = {}
url = "https://www.facebook.com/Medianetlive/videos/676754012901513/"
ydl = youtube_dl.YoutubeDL(params)
info = ydl.extract_info(url, download=False)
self.assertGreater(info.get('comment_count'), 0)
2020-06-28 15:59:47 +03:00
def test_meta_data(self):
params = {}
2020-06-29 09:28:58 +03:00
url = "https://www.facebook.com/parapsychological.centr/videos/177407933624543/"
2020-06-28 15:59:47 +03:00
ydl = youtube_dl.YoutubeDL(params)
info = ydl.extract_info(url, download=False)
self.assertGreater(info.get('comment_count'), 0)
2020-08-16 16:49:51 +03:00
self.assertTrue(info.get('uploader_handle'), 0)
2020-06-28 15:59:47 +03:00
2020-06-24 09:42:00 +03:00
def test_metadata_fetch_with_log_in(self):
2020-06-28 15:59:47 +03:00
url = "https://www.facebook.com/oristandup/videos/675360549895283"
2020-06-17 16:25:11 +03:00
params = {}
with open("cookie_file") as file:
2020-06-24 09:42:00 +03:00
proxy = "ec2-3-221-82-67.compute-1.amazonaws.com:3128"
2020-06-17 16:25:11 +03:00
params['cookiefile'] = file.name
params['proxy'] = proxy
ydl = youtube_dl.YoutubeDL(params)
info = ydl.extract_info(url, download=False)
2020-06-28 15:59:47 +03:00
print (info.get('title'))
print (info.get('timestamp'))
2020-06-17 16:25:11 +03:00
self.assertTrue(info.get('timestamp'))
self.assertTrue(info.get('view_count'))
2020-06-24 09:42:00 +03:00
self.assertTrue(info.get('comment_count'))
2020-06-17 16:25:11 +03:00
self.assertTrue(info.get('width'))
self.assertTrue(info.get('uploader_id'))
self.assertTrue(info.get('thumbnail'))
2020-06-28 15:59:47 +03:00
def test_unavailable_video(self):
url = "https://www.facebook.com/101457238278830/videos/287839102599521/"
params = {}
with open("cookie_file") as file:
try:
proxy = "ec2-3-221-82-67.compute-1.amazonaws.com:3128"
params['cookiefile'] = file.name
params['proxy'] = proxy
ydl = youtube_dl.YoutubeDL(params)
info = ydl.extract_info(url, download=False)
except DownloadError:
self.assertRaises(DownloadError)
def test_paid_videos_timestamp(self):
params = {}
url = "https://www.facebook.com/148456285190063/videos/307226959975478"
ydl = youtube_dl.YoutubeDL(params)
info = ydl.extract_info(url, download=False)
print (info.get('timestamp'))
self.assertTrue(info.get('timestamp'))
2020-06-17 16:25:11 +03:00
if __name__ == '__main__':
unittest.main()