python 에서 requests 모듈 매개 변수 인 코딩 을 사용 하 는 다른 처리 방법

python 에서 requests 모듈 http 요청 을 사용 할 때 중국어 매개 변 수 는 자동 으로 URL 인 코딩 되 지 않 고 urllib(python 3)모듈 에서 urllib.parse.quote("중국어")수 동 URL 인 코딩 방법 을 찾 지 못 했 습 니 다.반나절 동안 requests 모듈 이 중국어 매개 변수 에 대해 3 가지 다른 처리 방식 을 가지 고 있 음 을 발 견 했 습 니 다.
1.requests 모듈 자동 URL 인 코딩 매개 변수
인자 자동 URL 인 코딩 을 하려 면 요청 인 자 를 사전 형식 으로 정의 해 야 합 니 다.다음 demo:

import requests

proxy = {"http":"http://127.0.0.1:8080",
 "https":"http://127.0.0.1:8080"}

def reTest():
 url = "http://www.baidu.com"
 pdict = {"name":"    "}
 requests.post(url = url,data = pdict,proxies = proxy)
효 과 는 아래 그림 과 같 습 니 다.중국 어 는 URL 인 코딩 으로 정확하게 처 리 됩 니 다.

2.매개 변수 원형 출력,인 코딩 처리 필요 없 음
dictionary 를 사용 하여 파 라 메 터 를 정의 합 니 다.요청 을 보 낼 때 requests 모듈 은 자동 으로 URL 인 코딩 처리 파 라 메 터 를 사용 합 니 다.그러나 인 코딩 이 필요 하지 않 을 수도 있 습 니 다.파 라 메 터 를 그대로 출력 하 라 고 요구 할 때 파 라 메 터 를 문자열 로 직접 정의 하면 됩 니 다.

import requests

proxy = {"http":"http://127.0.0.1:8080",
 "https":"http://127.0.0.1:8080"}

def reTest():
 url = "http://www.baidu.com"
 pstr1 = "name=  ".encode("utf-8")
 requests.post(url = url,data = pstr1, proxies = proxy)
주:파 라 메 터 는 utf-8 인 코딩 이 필요 합 니 다.그렇지 않 으 면 잘못 보 고 됩 니 다 Use body.encode('utf-8')UTF-8 에서 encoded 를 보 내 려 면.
마지막 효 과 는 다음 그림 과 같 습 니 다.매개 변 수 는 그대로 출력 합 니 다.

3.매개 변 수 는 format 또는%포맷 을 사용 하여 매개 변수 str 가 bytes 로 변 합 니 다.
어떤 때 는 문자열 매개 변 수 를 직접 정의 합 니 다.그 중 어떤 매개 변 수 는 변수 입 니 다.format 또는%포맷 제어 변 수 를 필요 로 합 니 다.이 때 포맷 된 매개 변 수 는 bytes 로 변 한 것 을 발견 할 수 있 습 니 다.

import requests

proxy = {"http":"http://127.0.0.1:8080",
 "https":"http://127.0.0.1:8080"}

def reTest():
 url = "http://www.baidu.com"
 pstr2 = "name={0}".format("  ".encode("utf-8"))
 requests.post(url = url,data = pstr2, proxies = proxy)
인자 가 bytes 로 변 했 습 니 다.

이 요청 아래:
1.매개 변수 에 URL 인 코딩 이 필요 하 다 면 매개 변수 가 적 을 때 dict 정 의 를 사용 할 수 있 습 니 다.매개 변수 가 너무 많 으 면 dict 가 귀 찮 으 면 매개 변수 에 대해 urllib.parse.quote("중국어")수 동 encode 를 URL 인 코딩 으로 사용 할 수 있 습 니 다.
2.중국어 매개 변 수 를 그대로 출력 해 야 합 니 다.매개 변 수 를 포맷 한 후 인 코딩 하면 됩 니 다.pstr 2="name={0}".format("중국어").encode("utf-8")
이상 python 에서 requests 모듈 매개 변 수 를 사용 하 는 인 코딩 에 대한 다른 처리 방법 은 바로 작은 편집 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.참고 하 시기 바 랍 니 다.여러분 들 이 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기