抖音水印python源码
import hashlib
import base64
import time
import requests
import json
import lxml.html
def base64encode(text: str, reverse_map: bool = False) -> str:
if reverse_map is False:
return base64.b64encode(text.encode()).decode()
base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="[::-1]
r = "" # the result
c = 3 - len(text) % 3 # the length of padding
p = base64chars[-1] * c # the padding
s = text + "\0" * c # the text to encode
i = 0
while i < len(s):
if i > 0 and ((i / 3 * 4) % 76) == 0:
r = r + "\r\n"
n = (ord(s[i]) << 16) + (ord(s[i + 1]) << 8) + ord(s[i + 2])
n1 = (n >> 18) & 63
n2 = (n >> 12) & 63
n3 = (n >> 6) & 63
n4 = n & 63
r += base64chars[n1] + base64chars[n2] + base64chars[n3] + base64chars[n4]
i += 3
return (r[0: len(r) - len(p)] + p).lower()
link = input('请粘贴抖音的链接:')
link = 'http://v.douyin.com/rgGpHL/'
t = '1560489959057'
t = time.time()
res = link.strip() + str(int(t))
r = base64encode(hashlib.md5(res.encode()).hexdigest(), True)
print(r)
answer = 'ztgon6ohn64k09=mntkpongmz60l060qz6nb0t/dn9ka'
data = {
'pageUrl': link,
't': t,
's': r,
}
response = requests.post('http://www.kaolajiexi.com/ajax/parse.php', data=data)
print(response.text)
u = json.loads(response.text)'data'['sourceUrl']
print(u)
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.157 Safari/537.36'
}
text = requests.get(link, allow_redirects=True, headers=headers).text
dom = lxml.html.etree.HTML(text)
title = dom.xpath('//p[@class="desc"]/text()')[0]
name = dom.xpath('//p[@class="name nowrap"]/text()')0
with open(f'{name} - {title}.mp4', 'wb') as f:
f.write(requests.get(u).content)
作者:MuNian123
来源:CSDN
原文:https://blog.csdn.net/qq_42370150/article/details/92782779
版权声明:本文为博主原创文章,转载请附上博文链接!