모듈을 사용하면 httplib
모듈을 사용하지만 HTTP 프로토콜을 수동으로 구동하지 않아도되는 더 쉬운 방법이 있습니다. 응답이 성공하지 않았거나 찾을 수 없음 404을 반환 경우는 예외가 발생합니다
import requests
auth = ('someusername', 'somepassword')
response = requests.get(yoururl, auth=auth)
response.raise_for_status()
: (첫번째 외부 모듈이 필요 설치)를 requests
library를 사용
아마 간단합니다.
response.content
(바이트 문자열) 또는 response.text
(유니 코드 응답)으로 응답 본문을 더 파싱 할 수 있습니다.
처럼 보일 것 urllib2
module를 사용하여, 단지 표준 라이브러리를 사용하여 :
import urllib2, base64
request = urllib2.Request(yoururl)
authstring = base64.encodestring('{}:{}'.format('someusername', 'somepassword')).strip()
request.add_header("Authorization", "Basic {}".format(authstring))
response = urllib2.urlopen(request)
if not 200 <= response.getcode() < 400:
# error response, raise an exception here?
content = response.read()
try:
text = content.decode(response.info().getparam('charset', 'utf8'))
except UnicodeDecodeError:
text = content.decode('ascii', 'replace')
content
는 응답 본문의 바이트 문자열의 내용을, 그리고 text
는 시점까지, 유니 코드 값이 될 것이다 .
아주 좋습니다. '요청'이 잘 작동하는 것 같습니다. \영형/ – Peter