day03 1、百度翻译 import urllib.request import urllib.parse # post请求 url = 'https://fanyi.baidu.com/sug' headers = { 'user-agent':' Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36' } data = { 'kw': 'spider' } # post请求的参数 必须要进行编码 data = urllib.parse.urlencode(data).encode("utf-8") # post的请求的参数 是不会拼接在url的后面的 而是需要放在请求对象的参数中 # post请求的参数 必须要进行编码 request = urllib.request.Request(url=url,data=data,headers=headers) # 模拟浏览器向服务器发送请求 response = urllib.request.urlopen(request) # 获取响应的数据 content = response.read().decode("utf8") # 打印数据 print(response) print(content) print(type(content)) import json obj = json.loads(content) print(obj) # post请求方式的参数 必须编码 data = urllib.parse.urlencode(data) # 编码之后 必须调用encode方法 data = urllib.parse.urlencode(data).encode('utf-8') # 参数是放在请求对象定制的方法中 request = urllib.request.Request(url=url,data=data,headers=headers)
2、百度翻译详细翻译
import urllib.request import urllib.parse url = 'https://fanyi.baidu.com/v2transapi?from=en&to=zh' headers = { 'Accept': '*/*', # 'Accept-Encoding': 'gzip, deflate, br', 'Accept-Language': 'zh,en-US;q=0.9,en;q=0.8,zh-CN;q=0.7', 'Connection': 'keep-alive', 'Content-Length': '133', 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', 'Cookie': 'BIDUPSID=AF1D3519C322AC064B988AF0CDF3866C; PSTM=1624174860; __yjs_duid=1_04608c1e65e2b5e196ff1cbb16e1d3ba1624265663531; REALTIME_TRANS_SWITCH=1; HISTORY_SWITCH=1; FANYI_WORD_SWITCH=1; SOUND_SPD_SWITCH=1; SOUND_PREFER_SWITCH=1; BDUSS=c0TklaVE1ZRHpDZDBnbmd5U203LWE4clI5fmJOanlyczVFMjUwbDg4WXpjNmhoRVFBQUFBJCQAAAAAAQAAAAEAAAD~yyEnztLSqrn9y8S8tsqo19MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADPmgGEz5oBhS1; BDUSS_BFESS=c0TklaVE1ZRHpDZDBnbmd5U203LWE4clI5fmJOanlyczVFMjUwbDg4WXpjNmhoRVFBQUFBJCQAAAAAAQAAAAEAAAD~yyEnztLSqrn9y8S8tsqo19MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADPmgGEz5oBhS1; MCITY=-%3A; BAIDUID=2BAE346A019DB22CE7AC220E1520E544:FG=1; APPGUIDE_10_0_2=1; BAIDUID_BFESS=2BAE346A019DB22CE7AC220E1520E544:FG=1; ariaDefaultTheme=undefined; RT="z=1&dm=baidu.com&si=e4pi5y9y5bk&ss=kyyhz0x5&sl=1&tt=18v&bcn=https%3A%2F%2Ffclog.baidu.com%2Flog%2Fweirwood%3Ftype%3Dperf&ul=21xf&hd=21xz"; H_PS_PSSID=35784_35104_31254_35489_34584_35490_35542_35320_26350_35746; delPer=0; PSINO=6; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; BA_HECTOR=208k2h810l84850kgj1gvce610r; Hm_lvt_64ecd82404c51e03dc91cb9e8c025574=1641017836,1641102233,1641304192,1643526340; Hm_lpvt_64ecd82404c51e03dc91cb9e8c025574=1643526340; ab_sr=1.0.1_M2Y3YjA4ZmFhMWU1MGNmNmE1Y2YzYjQyNzM4NmRhMTIzYmRjZTkwNmJlNDdiMGExMDhiOGNiNzgzYzUzNjBmN2IwYTFmOGUyODM5MmM4YTZjY2E5OTI2N2Y3M2EzOWM3NmY2M2UyNDhiNDMxNGJiMzBlMWMyOTkwZmRkZmNjNjM=', 'Host': 'fanyi.baidu.com', 'Origin': 'https://fanyi.baidu.com', 'Referer': 'https://fanyi.baidu.com/?aldtype=16047', 'sec-ch-ua': '" Not A;Brand";v="99", "Chromium";v="96", "Google Chrome";v="96"', 'sec-ch-ua-mobile': '?0', 'sec-ch-ua-platform': 'Windows', 'Sec-Fetch-Dest': 'empty', 'Sec-Fetch-Mode': 'cors', 'Sec-Fetch-Site': 'same-origin', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36', 'X-Requested-With': 'XMLHttpRequest', } data = { 'from': 'en', 'to':'zh', 'query': 'dp', 'transtype': 'realtime', 'simple_means_flag': '3', 'sign': '332092.127501', 'token': '9b83cfa8b491b42cb8b717ef1ec7c613', 'domain': 'common' } # post请求的参数 必须进行编码 而且要调用encode方法 data = urllib.parse.urlencode(data).encode('utf-8') # 请求对象的定制 request = urllib.request.Request(url=url,data=data,headers=headers) # 模拟浏览器向服务器发送请求 response = urllib.request.urlopen(request) # 获取响应的数据 content = response.read().decode('utf-8') import json obj = json.loads(content) print(content) print(obj)