From eb6ec18140422bf6bb0d6fc49d2feeb99235673d Mon Sep 17 00:00:00 2001 From: cnbeining Date: Thu, 10 Sep 2015 00:11:05 -0400 Subject: [PATCH] Add Pixnet support --- README.md | 1 + src/you_get/common.py | 3 +- src/you_get/extractors/__init__.py | 1 + src/you_get/extractors/pixnet.py | 55 ++++++++++++++++++++++++++++++ 4 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 src/you_get/extractors/pixnet.py diff --git a/README.md b/README.md index b3f2e257..9e40f103 100644 --- a/README.md +++ b/README.md @@ -59,6 +59,7 @@ Fork me on GitHub: * MTV 81 * NetEase (网易视频) * NetEase Music (网易云音乐) +* Pixnet * PPTV * QianMo (阡陌视频) * QQ (腾讯视频) diff --git a/src/you_get/common.py b/src/you_get/common.py index 705c1486..5baaafc9 100755 --- a/src/you_get/common.py +++ b/src/you_get/common.py @@ -940,7 +940,7 @@ def script_main(script_name, download, download_playlist = None): sys.exit(1) def url_to_module(url): - from .extractors import netease, w56, acfun, baidu, baomihua, bilibili, blip, catfun, cntv, cbs, coursera, dailymotion, dongting, douban, douyutv, ehow, facebook, freesound, funshion, google, sina, ifeng, alive, instagram, iqiyi, joy, jpopsuki, khan, ku6, kugou, kuwo, letv, lizhi, magisto, metacafe, miaopai, miomio, mixcloud, mtv81, nicovideo, pptv, qianmo, qq, sohu, songtaste, soundcloud, ted, theplatform, tudou, tucao, tumblr, twitter, vid48, videobam, vidto, vimeo, vine, vk, xiami, yinyuetai, youku, youtube, zhanqi + from .extractors import netease, w56, acfun, baidu, baomihua, bilibili, blip, catfun, cntv, cbs, coursera, dailymotion, dongting, douban, douyutv, ehow, facebook, freesound, funshion, google, sina, ifeng, alive, instagram, iqiyi, joy, jpopsuki, khan, ku6, kugou, kuwo, letv, lizhi, magisto, metacafe, miaopai, miomio, mixcloud, mtv81, nicovideo, pixnet, pptv, qianmo, qq, sohu, songtaste, soundcloud, ted, theplatform, tudou, tucao, tumblr, twitter, vid48, videobam, vidto, vimeo, vine, vk, xiami, yinyuetai, youku, youtube, zhanqi video_host = r1(r'https?://([^/]+)/', url) video_url = r1(r'https?://[^/]+(.*)', url) @@ -993,6 +993,7 @@ def url_to_module(url): 'mixcloud': mixcloud, 'mtv81': mtv81, 'nicovideo': nicovideo, + 'pixnet': pixnet, 'pptv': pptv, 'qianmo':qianmo, 'qq': qq, diff --git a/src/you_get/extractors/__init__.py b/src/you_get/extractors/__init__.py index 2f1c268b..1a167000 100755 --- a/src/you_get/extractors/__init__.py +++ b/src/you_get/extractors/__init__.py @@ -35,6 +35,7 @@ from .mixcloud import * from .mtv81 import * from .netease import * from .nicovideo import * +from .pixnet import * from .pptv import * from .qianmo import * from .qq import * diff --git a/src/you_get/extractors/pixnet.py b/src/you_get/extractors/pixnet.py new file mode 100644 index 00000000..f34ac6c2 --- /dev/null +++ b/src/you_get/extractors/pixnet.py @@ -0,0 +1,55 @@ +#!/usr/bin/env python + +__all__ = ['pixnet_download'] + +from ..common import * +import urllib.error +from time import time +from urllib.parse import quote +from json import loads + +def pixnet_download(url, output_dir = '.', merge = True, info_only = False): + if re.match(r'http://(\w)+.pixnet.net/album/video/(\d)+', url): + # http://eric6513.pixnet.net/album/video/206644535 + html = get_content(url) + title = ''.join(r1(r'