mirror of
https://github.com/webrecorder/pywb.git
synced 2025-03-15 00:03:28 +01:00
rewrite: tw: improve twitter rewrite to force mp4 for videos in embedded tweets (#761)
This commit is contained in:
parent
16135d956a
commit
8ef4ff102d
@ -90,17 +90,25 @@ def rewrite_tw_dash(string, *args):
|
|||||||
try:
|
try:
|
||||||
best_variant = None
|
best_variant = None
|
||||||
best_bitrate = 0
|
best_bitrate = 0
|
||||||
|
best_src = ""
|
||||||
max_bitrate = 5000000
|
max_bitrate = 5000000
|
||||||
|
|
||||||
data = json.loads(string)
|
data = json.loads(string)
|
||||||
for variant in data["variants"]:
|
for variant in data["variants"]:
|
||||||
if variant["content_type"] != "video/mp4":
|
if (("content_type" in variant and variant["content_type"] != "video/mp4") or
|
||||||
|
("type" in variant and variant["type"] != "video/mp4")):
|
||||||
continue
|
continue
|
||||||
|
|
||||||
bitrate = variant.get("bitrate")
|
bitrate = variant.get("bitrate")
|
||||||
|
src = variant.get("src")
|
||||||
|
|
||||||
if bitrate and bitrate > best_bitrate and bitrate <= max_bitrate:
|
if bitrate and bitrate > best_bitrate and bitrate <= max_bitrate:
|
||||||
best_variant = variant
|
best_variant = variant
|
||||||
best_bitrate = bitrate
|
best_bitrate = bitrate
|
||||||
|
# just compare src strings with dimensions
|
||||||
|
elif src and src > best_src:
|
||||||
|
best_variant = variant
|
||||||
|
best_src = src
|
||||||
|
|
||||||
if best_variant:
|
if best_variant:
|
||||||
data["variants"] = [best_variant]
|
data["variants"] = [best_variant]
|
||||||
|
@ -61,6 +61,7 @@ rules:
|
|||||||
|
|
||||||
# twitter rules
|
# twitter rules
|
||||||
#=================================================================
|
#=================================================================
|
||||||
|
|
||||||
- url_prefix: 'com,twitter)/i/profiles/show/'
|
- url_prefix: 'com,twitter)/i/profiles/show/'
|
||||||
|
|
||||||
fuzzy_lookup: '/profiles/show/.*with_replies\?.*(max_id=[^&]+)'
|
fuzzy_lookup: '/profiles/show/.*with_replies\?.*(max_id=[^&]+)'
|
||||||
@ -84,6 +85,14 @@ rules:
|
|||||||
function: 'pywb.rewrite.rewrite_dash:rewrite_tw_dash'
|
function: 'pywb.rewrite.rewrite_dash:rewrite_tw_dash'
|
||||||
|
|
||||||
|
|
||||||
|
- url_prefix: ['com,twimg,syndication,cdn)/tweet-result']
|
||||||
|
|
||||||
|
rewrite:
|
||||||
|
js_regexs:
|
||||||
|
- match: 'video":(.*?viewCount":\d+})'
|
||||||
|
group: 1
|
||||||
|
function: 'pywb.rewrite.rewrite_dash:rewrite_tw_dash'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# facebook rules
|
# facebook rules
|
||||||
|
Loading…
x
Reference in New Issue
Block a user