>  기사  >  백엔드 개발  >  Python의 http 요청 메소드 라이브러리 요약

Python의 http 요청 메소드 라이브러리 요약

高洛峰
高洛峰원래의
2016-11-23 13:28:471899검색

최근 인터페이스 테스트를 위해 Python을 사용하다가 Python에 http 요청 메소드가 많다는 것을 발견했습니다. 오늘은 시간을 내어 관련 내용을 정리하여 여러분께 공유해 드립니다.
1. Python 자체 라이브러리 - ---urllib2

Python의 내장 라이브러리인 urllib2가 일반적으로 사용됩니다. 간단한 사용법은 다음과 같습니다.

import urllib2

response = urllib2.urlopen('http://localhost :8080/jenkins/api/json?pretty=true')

print response.read()

간단한 요청 가져오기

import urllib2

import urllib

post_data = urllib.urlencode({})

response = urllib2.urlopen('http://localhost:8080/, post_data)

print response.read()

print response.getheaders()

이것은 게시물을 보내는 urllib2의 가장 간단한 예입니다. 코드가 많아요
2. 파이썬 자체 라이브러리 - httplib

httplib는 상대적으로 낮은 수준의 http 요청 모듈이며, urlib는 httplib를 기반으로 캡슐화되어 있습니다. 간단한 사용법은 다음과 같습니다:
import httplib
conn = httplib.HTTPConnection("www.python.org")
conn.request("GET", "/index.html")
r1 = conn .getresponse()
print r1.status, r1.reason
data1 = r1.read()
conn.request("GET", "/parrot.spam")
r2 = conn.getresponse()
data2 = r2.read()
conn.close()

간단한 get 요청

post 요청을 살펴보겠습니다
import httplib, urllib
params = urllib.urlencode({'@number': 12524, '@type': 'issue', '@action': 'show'})
headers = {"Content-type": "application / x-www-form-urlencoded", "수락": "text/plain"}
conn = httplib.HTTPConnection("bugs.python.org")
conn.request("POST", "" , params, headers)
response = conn.getresponse()
data = response.read()
인쇄 데이터
conn.close()


생각하시나요? 너무 복잡해요? 글을 쓸 때마다 문서를 읽어야 합니다. 세 번째 항목을 살펴보겠습니다
3. 타사 라이브러리-요청

get 요청 보내기는 매우 간단합니다.
인쇄 요청 .get('http: //localhost:8080).text

한 문장으로 포스팅 요청을 살펴보겠습니다
payload = {'key1': 'value1', 'key2': 'value2'}
r = request.post("http://httpbin.org/post", data=payload)
print r.text

또한 매우 간단합니다.

인증하려면 다시 확인하세요.
url = 'http://localhost:8080'
r = request.post(url, data={}, auth=HTTPBasicAuth('admin) ' , 'admin'))
print r.status_code
print r.headers
print r.reason

urllib2보다 훨씬 간단하지 않나요? 요청은 json 구문 분석과 함께 제공됩니다. 훌륭해요

파이썬의 http 요청
import urllib
params = urllib.urlencode({key:value,key:value})
resultHtml = urllib.urlopen('[ API 또는 URL]',params)
result = resultHtml.read()
결과 인쇄

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.