pc_抖音破解

This commit is contained in:
aiyingfeng 2023-08-01 20:11:15 +08:00
parent 30c4ad4d1b
commit bc6a9102a5
7 changed files with 1453 additions and 27 deletions

View File

@ -1,27 +0,0 @@
import requests
while True:
keyword = '半斤塘口'
url = f"https://www.douyin.com/aweme/v1/web/discover/search/?device_platform=webapp&aid=6383&channel=channel_pc_web&" \
f"search_channel=aweme_user_web&keyword={keyword}&search_source=switch_tab&" \
f"query_correct_type=1&is_filter_search=0&from_group_id=&offset=0&count=10&pc_client_type=1&" \
f"version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=1920&screen_height=1080&" \
f"browser_language=zh-CN&browser_platform=Linux+x86_64&browser_name=Chrome&browser_version=114.0.0.0&" \
f"browser_online=true&engine_name=Blink&engine_version=114.0.0.0&os_name=Linux&os_version=x86_64&" \
f"cpu_core_num=12&device_memory=8&platform=PC&downlink=10&effective_type=4g&round_trip_time=150&" \
f"webid=7261162216640235023&" \
f"msToken=9Y9pLJ4YoArPxaGNgqc-Ri79uPY5pStR6VQMU9nWYzAqlvjYFzNF0RibRR13GMJShBW4BUBc9pXGqXlyJ" \
f"Fs5PUNJzekrpXonY3Hcet3YOIYXj1cgkqnqLQHOdddj3GE="
headers = {
'cookie': 'ttwid=1%7CA3JwTOHc_yCYti7V21gSG_2s1cJIjdM0ndYN3Bg3bnk%7C1690624371%7C556a8219c093e5b13b9e1e'
'157e82781dd10d46375730d210d50095bacb2bdc47;',
'referer': 'https://www.douyin.com/search/%E5%8D%8A%E6%96%A4%E5%A1%98%E5%8F%A3?source=normal_sear'
'ch&aid=9853b6ad-fc01-441b-bc7f-4aaccc8b30bb&enter_from=live_detail',
'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.'
'0.0.0 Safari/537.36'
}
response = requests.request("GET", url, headers=headers)
print(response.text)

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

View File

@ -0,0 +1,83 @@
from urllib.parse import quote
from http import cookies
import http.client
conn = http.client.HTTPSConnection("www.douyin.com")
def get_ac_nonce(encoded_text):
url = f"/search/{encoded_text}?aid=86c17213-316d-4ad1-b9bf-8c63f8a0dc97&source=normal_search&type=user"
headers = {
'authority': 'www.douyin.com',
'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
'accept-language': 'zh-CN,zh;q=0.9,en;q=0.8',
'cache-control': 'no-cache',
'pragma': 'no-cache',
'sec-ch-ua': '"Not.A/Brand";v="8", "Chromium";v="114", "Google Chrome";v="114"',
'sec-ch-ua-mobile': '?0',
'sec-ch-ua-platform': '"Linux"',
'sec-fetch-dest': 'document',
'sec-fetch-mode': 'navigate',
'sec-fetch-site': 'none',
'sec-fetch-user': '?1',
'upgrade-insecure-requests': '1',
'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
}
conn.request("GET", url=url, headers=headers)
response = conn.getresponse()
cookie_dict = get_cookie_dict(response)
__ac_nonce = cookie_dict.get('__ac_nonce')
print(__ac_nonce)
conn.close()
return __ac_nonce
def get_ttwid(__ac_nonce, encoded_text):
url = f"/search/{encoded_text}?aid=86c17213-316d-4ad1-b9bg-8c63f8a0dc97&source=normal_search&type=user"
headers = {
'authority': 'www.douyin.com',
'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
'accept-language': 'zh-CN,zh;q=0.9,en;q=0.8',
'cache-control': 'no-cache',
'cookie': f'__ac_nonce={__ac_nonce}; __ac_signature=_02B4Z6wo00f01NL-f2wAAIDD41Tb6n.CT9zS3nvAAFB8o7NPqbdJFO6mVl3LwjlgF2Zf0a0wDXQVZvs6UGw15ktDgIh0el3P62aPH.Zs9.DmleOkSYHoGUyabP9zOejTMfCrsSvHICfQUYw69b;',
'pragma': 'no-cache',
'referer': f'https://www.douyin.com/search/{encoded_text}?aid=86c17213-316d-4ad1-b9bf-8c63f8a0dc97&source=normal_search&type=user',
'sec-ch-ua': '"Not.A/Brand";v="8", "Chromium";v="114", "Google Chrome";v="114"',
'sec-ch-ua-mobile': '?0',
'sec-ch-ua-platform': '"Linux"',
'sec-fetch-dest': 'document',
'sec-fetch-mode': 'navigate',
'sec-fetch-site': 'same-origin',
'upgrade-insecure-requests': '1',
'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'
}
conn.request("GET", url=url, headers=headers)
response = conn.getresponse()
print(response.read().decode())
try:
cookie_dict = get_cookie_dict(response)
ttwid = cookie_dict.get('ttwid')
print(ttwid)
conn.close()
return ttwid
except AttributeError as e:
print(f"报错{e}")
def get_cookie_dict(response):
cookie_str = response.getheader("Set-Cookie")
cookie = cookies.SimpleCookie()
cookie.load(cookie_str)
# 将 Cookie 对象转换成字典形式
cookie_dict = {}
for key, morsel in cookie.items():
cookie_dict[key] = morsel.value
return cookie_dict
if __name__ == '__main__':
search_keyword = '半斤塘口'
encoded_text = quote(search_keyword)
__ac_nonce = get_ac_nonce(encoded_text)
get_ttwid(__ac_nonce, encoded_text)

File diff suppressed because one or more lines are too long