params = {
'aid': '24',
'app_name': 'web_search',
'offset': '0',
'format': 'json',
'keyword': '%E9%87%91%E6%AF%9B',
'autoload': 'true',
'count': '20',
'en_qc': '1',
'cur_tab': '1',
'from': 'search_tab',
'pd': 'synthesis'
}
base_url = 'https://www.toutiao.com/api/search/content/?'
url = base_url + urlencode(params)
print(url)
最终打印结果为:
https://www.toutiao.com/api/search/content/?aid=24&app_name=web_search&offset=0&format=json&keyword=%25E9%2587%2591%25E6%25AF%259B&autoload=true&count=20&en_qc=1&cur_tab=1&from=search_tab&pd=synthesis
可以看到,在使用urlencode之后,keyword的值由 ‘%E9%87%91%E6%AF%9B’变为了’%25E9%2587%2591%25E6%25AF%259B’,最终得到的网站也与预期的不同,这是因为urlencode又对’%E9%87%91%E6%AF%9B’进行了一次encode,因此在使用urlencode时类似keyword的值不需要进行urlencode,最好放在base_url中。