오답노트
[requests] Python requests 패키지 설명과 GET, POST 본문
requests 패키지
REST 방식을 사용할 수 있게 해주는 파이썬 패키지이다.
요약하면 URL로 정보를 요청해서 데이터를 받을 수 있다.
get()
HTTP 메소드 GET을 사용하는 함수다.
GET의 특징은 URL에 파라미터가 들어간다는 점이다.
URL로만으로 데이터를 가져오지 못하는 경우가 있는데, 이 때는 headers 속성에 referer 와 user-agent를 딕셔너리로 만들어 입력한다.
import requests
headers = {
"referer": "https://www.op.gg/champions",
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36"
}
response = requests.get(url,headers = headers)
response.json()['data']
'''
[{'id': 1,
'key': 'Annie',
'name': '애니',
'image_url': 'https://opgg-static.akamaized.net/images/lol/champion/Annie.png',
...
'''
post()
HTTP 메소드 POST을 사용하는 함수.
POST의 특징은 body에 파라미터가 들어간다는 점이다.
url = "https://openapi.naver.com/v1/papago/n2mt"
header = {
"Content-Type": "application/json",
"X-Naver-Client-Id": #{애플리케이션 등록 시 발급받은 클라이언트 아이디 값}
"X-Naver-Client-Secret": #{애플리케이션 등록 시 발급받은 클라이언트 시크릿 값}
}
params = {
"source" : "ko",
"target" : "en",
"text" : "안녕, 세상"
}
response = requests.post(url,json.dumps(params),headers = header)
response.json()
'''
{'message': {'result': {'srcLangType': 'ko',
'tarLangType': 'en',
'translatedText': 'Hello, world',
'engineType': 'N2MT',
'pivot': None,
'dict': None,
'tarDict': None},
'@type': 'response',
'@service': 'naverservice.nmt.proxy',
'@version': '1.0.0'}}
'''
'Python > Web Crawling' 카테고리의 다른 글
[selenium] 정적 페이지와 정적 페이지 웹 크롤링 (0) | 2022.08.05 |
---|---|
[selenium] selenium 간단 사용법 (0) | 2022.08.05 |
[BeautifulSoup] 정적 페이지와 정적 페이지 웹 크롤링 (0) | 2022.08.05 |
[CSS] CSS Selector (0) | 2022.08.05 |
[requests] 동적 페이지와 동적 페이지에 대한 웹 크롤링 (0) | 2022.08.05 |