Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: run.py

Issue 29324625: Issue 2951 - Fix handling of URLs without a scheme (Closed)
Patch Set: Created Oct. 9, 2015, 10:26 a.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # coding: utf-8 2 # coding: utf-8
3 3
4 import argparse 4 import argparse
5 import datetime 5 import datetime
6 import errno 6 import errno
7 import hashlib 7 import hashlib
8 import io 8 import io
9 import json 9 import json
10 import os 10 import os
(...skipping 28 matching lines...) Expand all
39 elif path == '/save': 39 elif path == '/save':
40 try: 40 try:
41 request_body_size = int(environ.get('CONTENT_LENGTH', 0)) 41 request_body_size = int(environ.get('CONTENT_LENGTH', 0))
42 except (ValueError): 42 except (ValueError):
43 start_response('400 Bad Request', []) 43 start_response('400 Bad Request', [])
44 return '' 44 return ''
45 45
46 data = json.loads(environ['wsgi.input'].read(request_body_size)) 46 data = json.loads(environ['wsgi.input'].read(request_body_size))
47 self.urls.remove(data['url']) 47 self.urls.remove(data['url'])
48 48
49 parsedurl = urlparse.urlparse(data['url']) 49 fullurl = data['url']
50 if not urlparse.urlparse(fullurl).scheme:
51 fullurl = 'http://' + fullurl
52 parsedurl = urlparse.urlparse(fullurl)
50 urlhash = hashlib.new('md5', data['url']).hexdigest() 53 urlhash = hashlib.new('md5', data['url']).hexdigest()
51 timestamp = datetime.datetime.fromtimestamp(data['startTime'] / 1000.0).st rftime('%Y-%m-%dT%H%M%S.%f') 54 timestamp = datetime.datetime.fromtimestamp(data['startTime'] / 1000.0).st rftime('%Y-%m-%dT%H%M%S.%f')
52 basename = "%s-%s-%s" % (parsedurl.hostname, timestamp, urlhash) 55 basename = "%s-%s-%s" % (parsedurl.hostname, timestamp, urlhash)
53 datapath = os.path.join(self.parameters.outdir, basename + ".json") 56 datapath = os.path.join(self.parameters.outdir, basename + ".json")
54 screenshotpath = os.path.join(self.parameters.outdir, basename + ".jpg") 57 screenshotpath = os.path.join(self.parameters.outdir, basename + ".jpg")
55 sourcepath = os.path.join(self.parameters.outdir, basename + ".xml") 58 sourcepath = os.path.join(self.parameters.outdir, basename + ".xml")
56 59
57 try: 60 try:
58 os.makedirs(self.parameters.outdir) 61 os.makedirs(self.parameters.outdir)
59 except OSError as e: 62 except OSError as e:
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
186 BASE_DIR = os.path.dirname(os.path.abspath(__file__)) 189 BASE_DIR = os.path.dirname(os.path.abspath(__file__))
187 DEPENDENCY_SCRIPT = os.path.join(BASE_DIR, "ensure_dependencies.py") 190 DEPENDENCY_SCRIPT = os.path.join(BASE_DIR, "ensure_dependencies.py")
188 191
189 try: 192 try:
190 subprocess.check_call([sys.executable, DEPENDENCY_SCRIPT, BASE_DIR]) 193 subprocess.check_call([sys.executable, DEPENDENCY_SCRIPT, BASE_DIR])
191 except subprocess.CalledProcessError as e: 194 except subprocess.CalledProcessError as e:
192 print >>sys.stderr, e 195 print >>sys.stderr, e
193 print >>sys.stderr, "Failed to ensure dependencies being up-to-date!" 196 print >>sys.stderr, "Failed to ensure dependencies being up-to-date!"
194 197
195 run() 198 run()
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld