目标:
结果:
{'tma_jssdk_version': '1.93.0.1', 'ac': 'WIFI', 'appTheme': 'dark'}
代码:
import urllib.parse as urlparse
url = 'https://search5-search-hl.amemv.com/aweme/v1/challenge/search/?tma_jssdk_version=1.93.0.1&ac=WIFI&appTheme=dark'
parsed = urlparse.urlparse(url)
# ParseResult(scheme='https', netloc='search5-search-hl.amemv.com', path='/aweme/v1/challenge/search/', params='', query='tma_jssdk_version=1.93.0.1&ac=WIFI&appTheme=dark', fragment='')
print(parsed)
querys = urlparse.parse_qs(parsed.query)
print(querys)
# {'tma_jssdk_version': ['1.93.0.1'], 'ac': ['WIFI'], 'appTheme': ['dark']}
querys = {k: v[0] for k, v in querys.items()}
print(querys)
# {'tma_jssdk_version': '1.93.0.1', 'ac': 'WIFI', 'appTheme': 'dark'}
parsed 是一个tuple对象,把url分成了6个部分,query 属性就是查询参数部分,再通过 prase_qs 方法解析成字典对象,解析后,字典的value 是列表,因为同一个参数可以有多个值,我们只取第一个值。
网友评论