From 991ba7fae38498b1066c7f6821d1d8681ef87f1b Mon Sep 17 00:00:00 2001
From: Jeff Crouse <jefftimesten@gmail.com>
Date: Sat, 5 Jan 2013 15:42:35 -0500
Subject: [PATCH] Added extractors for 3 porn sites

---
 LATEST_VERSION               |   2 +-
 README.md                    |  14 +-
 youtube-dl                   | Bin 45792 -> 3447 bytes
 youtube_dl/InfoExtractors.py | 328 +++++++++++++++++++++++++++++++++++
 4 files changed, 336 insertions(+), 8 deletions(-)
 mode change 100644 => 100755 LATEST_VERSION
 mode change 100644 => 100755 README.md

diff --git a/LATEST_VERSION b/LATEST_VERSION
old mode 100644
new mode 100755
index d070c6ea3..275de03d9
--- a/LATEST_VERSION
+++ b/LATEST_VERSION
@@ -1 +1 @@
-2012.10.09
+9999.99.99
\ No newline at end of file
diff --git a/README.md b/README.md
old mode 100644
new mode 100755
index 4b0de1b88..b3cd9a38c
--- a/README.md
+++ b/README.md
@@ -30,7 +30,7 @@ which means you can modify it, redistribute it or use it however you like.
     --list-extractors        List all supported extractors and the URLs they
                              would handle
 
-  Video Selection:
+## Video Selection:
     --playlist-start NUMBER  playlist video to start at (default is 1)
     --playlist-end NUMBER    playlist video to end at (default is last)
     --match-title REGEX      download only matching titles (regex or caseless
@@ -39,7 +39,7 @@ which means you can modify it, redistribute it or use it however you like.
                              caseless sub-string)
     --max-downloads NUMBER   Abort after downloading NUMBER files
 
-  Filesystem Options:
+## Filesystem Options:
     -t, --title              use title in file name
     --id                     use video ID in file name
     -l, --literal            [deprecated] alias of --title
@@ -70,7 +70,7 @@ which means you can modify it, redistribute it or use it however you like.
     --write-description      write video description to a .description file
     --write-info-json        write video metadata to a .info.json file
 
-  Verbosity / Simulation Options:
+## Verbosity / Simulation Options:
     -q, --quiet              activates quiet mode
     -s, --simulate           do not download the video and do not write anything
                              to disk
@@ -85,7 +85,7 @@ which means you can modify it, redistribute it or use it however you like.
     --console-title          display progress in console titlebar
     -v, --verbose            print various debugging information
 
-  Video Format Options:
+## Video Format Options:
     -f, --format FORMAT      video format code
     --all-formats            download all available video formats
     --prefer-free-formats    prefer free video formats unless a specific one is
@@ -97,12 +97,12 @@ which means you can modify it, redistribute it or use it however you like.
     --srt-lang LANG          language of the closed captions to download
                              (optional) use IETF language tags like 'en'
 
-  Authentication Options:
+## Authentication Options:
     -u, --username USERNAME  account username
     -p, --password PASSWORD  account password
     -n, --netrc              use .netrc authentication data
 
-  Post-processing Options:
+## Post-processing Options:
     -x, --extract-audio      convert video files to audio-only files (requires
                              ffmpeg or avconv and ffprobe or avprobe)
     --audio-format FORMAT    "best", "aac", "vorbis", "mp3", "m4a", or "wav";
@@ -172,7 +172,7 @@ youtube requires an additional signature since September 2012 which is not suppo
 The error
 
     File "youtube-dl", line 2
-    SyntaxError: Non-ASCII character '�' ...
+    SyntaxError: Non-ASCII character '\x93' ...
 
 means you're using an outdated version of Python. Please update to Python 2.6 or 2.7.
 
diff --git a/youtube-dl b/youtube-dl
index 6ba864a14c87e41cc8c836754d5a8932ae8967a2..e6f05c17327ed58f8db66e6dc7d2a38380355d61 100755
GIT binary patch
literal 3447
zcmbVOdvDt|5dVAr6qgpAq}5eK$&%#&DbS%Q)@^8tq+Ky2fk8<pTdhoKBvsq{^gHTh
zH*MBoK?L)0?>qkP9-o{xN}eW#I7RUp>b+i9VlpW<btN^Zy_!O$hV4gHi7BkPT9-vK
znP|B`n*jaw)Qv3Z+?DuOgGvKekXD<T>t%Pb>@Oy`OR?7Qy47(ZWhKwxF}!V6ga5Te
z|6x&+40Di*FF&I!^1Z!5rT7Y`po*2?x{<W}gnOs6Gndr{l$K4Z2b*i2erh$gcfD)F
zrCM`8j1Jcnj^T>*siG3gLgZCTU<^s@U9YK)N)E?VH{KnbpM!q}63H+DyOz&TVyW<O
z?4n4k3~j6Ax)98AS~{*2N^R?Xjf0ntk=Gt1wq-d^N0^jV`e~_(zY)&CYk38&C<<gj
zyWOsf5<zq^G5U{Ko}L36?Go_(`8mYxehetds;jMC2yKsNQ(%$PM*4=`b-&(SXO86C
zWwO_(i0|fD|Hyo>W2AKp(R%Am!6e9j^z);ml){hT?Owg={WT7ZvK}zlKJxGxlql>`
zmE*uqlsM~l=XsU`PtDqL+>cdpOw@*;$PbEcyfgm}PR<8bVy8@vNqogArC-HuH1ozk
z>q0>yMWqKJq`wdc9sgO{D3{`v;m#i2ah|d-6&)y*=2EL|q1PRG;N9*5Mj!opFX@Zu
zTios<+Q+n>#l}V2hx8lJH>1z*&OCEw_~^{1DE{|2u*Jc?(KZv-?&*z{?q<b`Fvb3s
z<o-FmlMPNL^h8~yGnCTZ%0i>vSick}@BtxRbFsn<vVstxNE%Jg7dA+EmjM?U<zWl^
zs?kk?&$1E(Vx~Y>(9{{%2!&Qy=1>WQO(hX@u|fA%(Chq$%6IER!L}$%qA&M^n01YU
z)+xGhO=wAHwIrwl6dI+`va0BsE-NYbkXLlJCLOYBk`hlIQuE5-nX%iz@(Oj!L{QFU
zLGP_YG_C8i(^I($+!f`zNnFC@(}SO<S+x~q#WQ!UH|4ag#+K3OCk_Iux>AL%<et23
z4e4<I2lIjoQ8$#70ny*^4c^D|VDiI2HOUEg1kn%_n4odF`fM<1^8W417w;~X@2`HR
zn@8*KncQXM^wH#xi>vF`mv4H;BPmb8`kf?RzgzYs*5udg2MBwNR<7x8R&UGo^6L7<
z^0$jW$spU?Ewac%oMmwydtt!*JWE)}BR`Ml$s$a$C}MM3u`FlvXdZ<b3qm&I9&N)}
zl4iaa&izH0hDnsOEC@5sqxsBFgFH_cJod8y8H?kHrM@>`EJ7Z80YetDERKS7vGC^@
zc(ZUGC28zM3!i?_Tg>7`l&3jkNfhM)`U~`C81Om61!pV_WBTVQau&}#j%hH@(||aV
zC?N~em~ocQ*ldPgkYp_N7|Ss7G04gIc@p^Z%!_A!l;a|pLKKF<+@Zms1FVX&m!?#~
z_K;IEC%7M$m%sHL&?Fdlg|@AWtE<baGpa0TUnJBhH-$3YQ&Hi<6J@~@7{ri@ajY0J
z(>7U3#5bo2mxhaqUY9*2*r5T0XSU;J*tO9{=g;E4i{2M$a_*Y)SN0cILrHhNY4oKT
zoJqO3wKP<T=7iV-E1`E@x$w3`uFUJ*17DeYYUC(gGNF&2HA0<b0DoX_{d`EHd5;5O
z8!aG+F}=gcB3L8HNC`ZeT4UzIi-g9vLadC^Q5l7BkkG2SIkMx9CaLn@u6xsuX00}M
zS+l9{#f~~PDPPjSq0S8`JL5ppXX2=pPoaCY<9oYbJ!8bb_W$4)MWPU&d0E`^eA2u7
zwc|q^th<|G*@wjBN@?qkU}-EwDzWu<>#vt{V-Wz8*kS$=xJ@fUd7(*y5!9DwI~=t8
zw5${!K-7MH*<$DvF0b2#W5!=<X!j~(D8)u_>Jg@g3{c+I8x7#SMN|TlgB43N<B}=;
zsO$EP_CVmcYupX(wyoIFgN~QF^F3eL-96jB$l72Q6{&gUt!A>7I+Q8j4cF=V%Yr=w
z-i#;EzU~1ZreJLonv*Cb)T{GOuNeW&u5bBAz6_n|{|B`qUpw4N8!1g1kHY$m*8h?w
VgcEqv4HG~(0kRQCgGDzp`~&H2U`7A{

literal 45792
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

diff --git a/youtube_dl/InfoExtractors.py b/youtube_dl/InfoExtractors.py
index e380f62a1..72ad25ad3 100755
--- a/youtube_dl/InfoExtractors.py
+++ b/youtube_dl/InfoExtractors.py
@@ -14,6 +14,10 @@ import email.utils
 import xml.etree.ElementTree
 import random
 import math
+import urllib
+import urllib2
+import httplib
+from urlparse import parse_qs, urlparse
 
 from .utils import *
 
@@ -3735,6 +3739,327 @@ class UstreamIE(InfoExtractor):
         return [info]
 
 
+
+class YouPornIE(InfoExtractor):
+    """Information extractor for youporn.com."""
+
+    _VALID_URL = r'^(?:https?://)?(?:\w+\.)?youporn\.com/watch/(?P<videoid>[0-9]+)/(?P<title>[^/]+)'
+    IE_NAME = u'youporn'
+    VIDEO_TITLE_RE = r'videoTitleArea">(?P<title>.*)</h1>'
+    VIDEO_DATE_RE = r'Date:</b>(?P<date>.*)</li>'
+    VIDEO_UPLOADER_RE = r'Submitted:</b>(?P<uploader>.*)</li>'
+    DOWNLOAD_LIST_RE = r'(?s)<ul class="downloadList">(?P<download_list>.*?)</ul>'
+    LINK_RE = r'(?s)<a href="(?P<url>[^"]+)">'
+
+    def __init__(self, downloader=None):
+        InfoExtractor.__init__(self, downloader)
+
+    def report_id(self, video_id):
+        """Report finding video ID"""
+        self._downloader.to_screen(u'[youporn] Video ID: %s' % video_id)
+
+    def report_webpage(self, url):
+        """Report downloading page"""
+        self._downloader.to_screen(u'[youporn] Downloaded page: %s' % url)
+
+    def report_title(self, video_title):
+        """Report dfinding title"""
+        self._downloader.to_screen(u'[youporn] Title: %s' % video_title)
+    
+    def report_uploader(self, uploader):
+        """Report dfinding title"""
+        self._downloader.to_screen(u'[youporn] Uploader: %s' % uploader)
+
+    def report_upload_date(self, video_date):
+        """Report finding date"""
+        self._downloader.to_screen(u'[youporn] Date: %s' % video_date)
+
+    def _print_formats(self, formats):
+        """Print all available formats"""
+        print 'Available formats:'
+        print u'ext\t\tformat'
+        print u'---------------------------------'
+        for format in formats:
+            print u'%s\t\t%s'  % (format['ext'], format['format'])
+
+    def _specific(self, req_format, formats):
+        for x in formats:
+            if(x["format"]==req_format):
+                return x
+        return None
+
+
+    def _real_extract(self, url):
+        mobj = re.match(self._VALID_URL, url)
+        if mobj is None:
+            self._downloader.trouble(u'ERROR: invalid URL: %s' % url)
+            return
+
+        video_id = mobj.group('videoid').decode('utf-8')
+        self.report_id(video_id)
+
+        # Get webpage content
+        try:
+            webpage = urllib2.urlopen(url).read()
+        except (urllib2.URLError, httplib.HTTPException, socket.error), err:
+            self._downloader.trouble(u'ERROR: unable to download video webpage: %s' % err)
+            return
+        self.report_webpage(url)
+
+        # Get the video title
+        result = re.search(self.VIDEO_TITLE_RE, webpage)
+        if result is None:
+            self._downloader.trouble(u'ERROR: unable to extract video title')
+            return
+        video_title = result.group('title').decode('utf-8').strip()
+        self.report_title(video_title)
+
+        # Get the video date
+        result = re.search(self.VIDEO_DATE_RE, webpage)
+        if result is None:
+            self._downloader.trouble(u'ERROR: unable to extract video date')
+            return
+        upload_date = result.group('date').decode('utf-8').strip()
+        self.report_upload_date(upload_date)
+
+        # Get the video uploader
+        result = re.search(self.VIDEO_UPLOADER_RE, webpage)
+        if result is None:
+            self._downloader.trouble(u'ERROR: unable to extract uploader')
+            return
+        video_uploader = result.group('uploader').decode('utf-8').strip()
+        video_uploader = clean_html( video_uploader )
+        self.report_uploader(video_uploader)
+
+        # Get all of the formats available
+        result = re.search(self.DOWNLOAD_LIST_RE, webpage)
+        if result is None:
+            self._downloader.trouble(u'ERROR: unable to extract download list')
+            return
+        download_list_html = result.group('download_list').decode('utf-8').strip()
+
+        # Get all of the links from the page
+        links = re.findall(self.LINK_RE, download_list_html)
+        if(len(links) == 0):
+            self._downloader.trouble(u'ERROR: no known formats available for video')
+            return
+        
+        self._downloader.to_screen(u'[youporn] Links found: %d' % len(links))   
+
+        formats = []
+        for link in links:
+
+            # A link looks like this:
+            # http://cdn1.download.youporn.phncdn.com/201210/31/8004515/480p_370k_8004515/YouPorn%20-%20Nubile%20Films%20The%20Pillow%20Fight.mp4?nvb=20121113051249&nva=20121114051249&ir=1200&sr=1200&hash=014b882080310e95fb6a0
+            # A path looks like this:
+            # /201210/31/8004515/480p_370k_8004515/YouPorn%20-%20Nubile%20Films%20The%20Pillow%20Fight.mp4
+            video_url = unescapeHTML( link.decode('utf-8') )
+            path = urlparse( video_url ).path
+            extension = os.path.splitext( path )[1][1:]
+            format = path.split('/')[4].split('_')[:2]
+            size = format[0]
+            bitrate = format[1]
+            format = "-".join( format )
+            title = u'%s-%s-%s' % (video_title, size, bitrate)
+
+            formats.append({
+                'id': video_id,
+                'url': video_url,
+                'uploader': video_uploader,
+                'upload_date': upload_date,
+                'title': title,
+                'ext': extension,
+                'format': format,
+                'thumbnail': None,
+                'description': None,
+                'player_url': None
+            })
+
+        if self._downloader.params.get('listformats', None):
+            self._print_formats(formats)
+            return
+
+        req_format = self._downloader.params.get('format', None)
+        #format_limit = self._downloader.params.get('format_limit', None)
+        self._downloader.to_screen(u'[youporn] Format: %s' % req_format)
+
+
+        if req_format is None or req_format == 'best':
+            return [formats[0]]
+        elif req_format == 'worst':
+            return [formats[-1]]
+        elif req_format in ('-1', 'all'):
+            return formats
+        else:
+            format = self._specific( req_format, formats )
+            if result is None:
+                self._downloader.trouble(u'ERROR: requested format not available')
+                return
+            return [format]
+
+        
+
+class PornotubeIE(InfoExtractor):
+    """Information extractor for pornotube.com."""
+
+    _VALID_URL = r'^(?:https?://)?(?:\w+\.)?pornotube\.com(/c/(?P<channel>[0-9]+))?(/m/(?P<videoid>[0-9]+))(/(?P<title>.+))$'
+    IE_NAME = u'pornotube'
+    VIDEO_URL_RE = r'url: "(?P<url>http://video[0-9].pornotube.com/.+\.flv)",'
+    VIDEO_UPLOADED_RE = r'<div class="video_added_by">Added (?P<date>[0-9\/]+) by'
+
+
+    def __init__(self, downloader=None):
+        InfoExtractor.__init__(self, downloader)
+
+    def report_extract_entry(self, url):
+        """Report downloading extry"""
+        self._downloader.to_screen(u'[pornotube] Downloading entry: %s' % url.decode('utf-8'))
+
+    def report_date(self, upload_date):
+        """Report finding uploaded date"""
+        self._downloader.to_screen(u'[pornotube] Entry date: %s' % upload_date)
+
+    def report_webpage(self, url):
+        """Report downloading page"""
+        self._downloader.to_screen(u'[pornotube] Downloaded page: %s' % url)
+
+    def report_title(self, video_title):
+        """Report downloading extry"""
+        self._downloader.to_screen(u'[pornotube] Title: %s' % video_title.decode('utf-8'))
+
+    def _real_extract(self, url):
+        mobj = re.match(self._VALID_URL, url)
+        if mobj is None:
+            self._downloader.trouble(u'ERROR: invalid URL: %s' % url)
+            return
+
+        video_id = mobj.group('videoid').decode('utf-8')
+        video_title = mobj.group('title').decode('utf-8')
+        self.report_title(video_title);
+
+        # Get webpage content
+        try:
+            webpage = urllib2.urlopen(url).read()
+        except (urllib2.URLError, httplib.HTTPException, socket.error), err:
+            self._downloader.trouble(u'ERROR: unable to download video webpage: %s' % err)
+            return
+        self.report_webpage(url)
+
+        # Get the video URL
+        result = re.search(self.VIDEO_URL_RE, webpage)
+        if result is None:
+            self._downloader.trouble(u'ERROR: unable to extract video url')
+            return
+        video_url = urllib.unquote(result.group('url').decode('utf-8'))
+        self.report_extract_entry(video_url)
+
+        #Get the uploaded date
+        result = re.search(self.VIDEO_UPLOADED_RE, webpage)
+        if result is None:
+            self._downloader.trouble(u'ERROR: unable to extract video title')
+            return
+        upload_date = result.group('date').decode('utf-8')
+        self.report_date(upload_date);
+
+
+        info = {'id': video_id,
+                'url': video_url,
+                'uploader': None,
+                'upload_date': upload_date,
+                'title': video_title,
+                'ext': 'flv',
+                'format': 'flv',
+                'thumbnail': None,
+                'description': None,
+                'player_url': None}
+
+        return [info]
+
+
+
+class YouJizzIE(InfoExtractor):
+    """Information extractor for youjizz.com."""
+
+    _VALID_URL = r'^(?:https?://)?(?:\w+\.)?youjizz\.com/videos/([^.]+).html$'
+    IE_NAME = u'youjizz'
+    VIDEO_TITLE_RE = r'<title>(?P<title>.*)</title>'
+    EMBED_PAGE_RE = r'http://www.youjizz.com/videos/embed/(?P<videoid>[0-9]+)'
+    SOURCE_RE = r'so.addVariable\("file",encodeURIComponent\("(?P<source>[^"]+)"\)\);'
+
+    def __init__(self, downloader=None):
+        InfoExtractor.__init__(self, downloader)
+
+    def report_extract_entry(self, url):
+        """Report downloading extry"""
+        self._downloader.to_screen(u'[youjizz] Downloading entry: %s' % url.decode('utf-8'))
+
+    def report_webpage(self, url):
+        """Report downloading page"""
+        self._downloader.to_screen(u'[youjizz] Downloaded page: %s' % url)
+
+    def report_title(self, video_title):
+        """Report downloading extry"""
+        self._downloader.to_screen(u'[youjizz] Title: %s' % video_title.decode('utf-8'))
+
+    def report_embed_page(self, embed_page):
+        """Report downloading extry"""
+        self._downloader.to_screen(u'[youjizz] Embed Page: %s' % embed_page.decode('utf-8'))
+
+    def _real_extract(self, url):
+        # Get webpage content
+        try:
+            webpage = urllib2.urlopen(url).read()
+        except (urllib2.URLError, httplib.HTTPException, socket.error), err:
+            self._downloader.trouble(u'ERROR: unable to download video webpage: %s' % err)
+            return
+        self.report_webpage(url)
+
+        # Get the video title
+        result = re.search(self.VIDEO_TITLE_RE, webpage)
+        if result is None:
+            self._downloader.trouble(u'ERROR: unable to extract video title')
+            return
+        video_title = result.group('title').decode('utf-8').strip()
+        self.report_title(video_title)
+
+        # Get the embed page
+        result = re.search(self.EMBED_PAGE_RE, webpage)
+        if result is None:
+            self._downloader.trouble(u'ERROR: unable to extract embed page')
+            return
+
+        embed_page_url = result.group(0).decode('utf-8').strip()
+        video_id = result.group('videoid').decode('utf-8')
+        self.report_embed_page(embed_page_url)
+    
+        try:
+            webpage = urllib2.urlopen(embed_page_url).read()
+        except (urllib2.URLError, httplib.HTTPException, socket.error), err:
+            self._downloader.trouble(u'ERROR: unable to download video embed page: %s' % err)
+            return
+        
+        # Get the video URL
+        result = re.search(self.SOURCE_RE, webpage)
+        if result is None:
+            self._downloader.trouble(u'ERROR: unable to extract video url')
+            return
+        video_url = result.group('source').decode('utf-8')
+        self.report_extract_entry(video_url)
+
+        info = {'id': video_id,
+                'url': video_url,
+                'uploader': None,
+                'upload_date': None,
+                'title': video_title,
+                'ext': 'flv',
+                'format': 'flv',
+                'thumbnail': None,
+                'description': None,
+                'player_url': embed_page_url}
+
+        return [info]
+
+
 def gen_extractors():
     """ Return a list of an instance of every supported extractor.
     The order does matter; the first extractor matched is the one handling the URL.
@@ -3768,6 +4093,9 @@ def gen_extractors():
         MTVIE(),
         YoukuIE(),
         XNXXIE(),
+        YouJizzIE(),
+        PornotubeIE(),
+        YouPornIE(),
         GooglePlusIE(),
         ArteTvIE(),
         NBAIE(),