python 파충류 요청 모듈 requests 상세 설명

requests
urllib 에 비해 제3자 라 이브 러 리 requests 는 더욱 간단 하고 인성 화 되 어 파충류 작업 에 자주 사용 되 는 라 이브 러 리 입 니 다.
설치 요청
초급 파충류 의 시작은 주로 requests 모듈 을 사용 합 니 다.
설치 requests 모듈:
Windows 시스템:
cmd 중:

pip install requests
mac 시스템 중:
터미널:

pip3 install requests
requests 라 이브 러 리 의 기본 사용

import requests

url = 'https://www.csdn.net/'
reponse = requests.get(url)
#  unicode     (str) 
print(reponse.text)
在这里插入图片描述
응답 대상 response 의⽅법
response.text 유 니 코드 형식의 데이터 되 돌려 주기(str)
response.content 바이트 흐름 데이터 되 돌려 주기(⼆진법)
response.content.decode('utf-8')
response.url 반환 url
response.encode()='인 코딩'
상태 코드
response.status_code:응답 상태 코드 검사
在这里插入图片描述
예 를 들 면:
200:요청 성공
301:영구 방향 변경
302:임시 방향 변경
403:서버 요청 거부
404:요청 실패(서버⽆법 은 클 라 이언 트 의 요청 에 따라 자원 을 찾 습 니 다(⽹⻚)
500:서버 내부 요청

#   requests
import requests
#   requests  get()           ,    url      
#        ,             response    
url = 'https://www.csdn.net/' # csdn      
response = requests.get(url)
print(response.status_code) # response.status_code:         
200
요청 형식
requests 의 몇 가지 요청 방식:

p = requests.get(url)
p = requests.post(url)
p = requests.put(url,data={'key':'value'})
p = requests.delete(url)
p = requests.head(url)
p = requests.options(url)
GET 요청
HTTP 기본 요청 방법 은 GET 입 니 다.
*요청 체 없 음
*데 이 터 는 1K 안에 있어 야 합 니 다!
*GET 요청 데 이 터 는 브 라 우 저의 주소 표시 줄 에 노출 됩 니 다.
GET 요청 에 자주 사용 되 는 동작:
1.브 라 우 저의 주소 표시 줄 에 URL 을 입력 하면 GET 요청
2.페이지 의 하이퍼링크 를 클릭 해도 GET 요청
3.폼 을 제출 할 때 폼 은 기본적으로 GET 요청 을 사용 하지만 POST 로 설정 할 수 있 습 니 다.
POST 요청
(1).주소 표시 줄 에 데이터 가 나타 나 지 않 습 니 다.
(2).데이터 의 크기 는 상한 선 이 없다
(3).요청 체 가 있 음
(4).요청 체 에 중국어 가 있 으 면 URL 인 코딩 을 사용 합 니 다!
requests.post()용법 은 requests.get()과 완전히 일치 합 니 다.특수 한 것 은 requests.post()에 data 인자 가 있어 서 요청 체 데 이 터 를 저장 합 니 다.
요청 헤더
웹 페이지 를 열 때 브 라 우 저 는 웹 서버 에 HTTP 요청 헤 더 를 보 내 고 웹 서버 는 HTTP 요청 헤 더 의 내용 에 따라 생 성 되 며 이 요청 한 내용 을 서버 에 보 냅 니 다.
요청 헤더 의 내용 을 수 동 으로 설정 할 수 있 습 니 다.

import requests

header = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36'}

url = 'https://www.csdn.net/'
reponse = requests.get(url,headers=header)
#      
print(reponse.text)
요청 설정 에이전트
스토리 보드 requests 에 프 록 시 를 추가 하려 면 요청(get/post)에서 proxies 인 자 를 전달 하면 됩 니 다.
cookie
쿠키:클 라 이언 트 에 기 록 된 정 보 를 통 해 사용자 의 신분 을 확인 합 니 다.
HTTP 는 12032 개의 연결 프로 토 콜 입 니 다.클 라 이언 트 와 서버 의 상호작용 은 요청/응답 과정 에 국한 되 고 끝 난 후에 끊 깁 니 다.다음 에 12032 번 요청 할 때 서버 는 새로운 클 라 이언 트 라 고 생각 합 니 다.그들 간 의 연결 을 유지 하기 위해 서버 에 이것 이 이전 사용자 가 보 낸 요청 임 을 알 리 기 위해 클 라 이언 트 정 보 를 12032 개의 땅 에 저장 해 야 합 니 다.
requests 조작 Cookies 는 간단 합 니 다.cookies 매개 변 수 를 지정 하면 됩 니 다.

import requests
#  cookies  CSDN         
header = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36',
      'cookie': 'uuid_tt_dd=10_30835064740-1583844255125-466273; dc_session_id=10_1583844255125.696601; __gads=ID=23811027bd34da29:T=1583844256:S=ALNI_MY6f7VlmNJKxrkHd2WKUIBQ34Bbnw; UserName=xdc1812547560; UserInfo=708aa833b2064ba9bb8ab0be63866b58; UserToken=708aa833b2064ba9bb8ab0be63866b58; UserNick=xdc1812547560; AU=F85; UN=xdc1812547560; BT=1590317415705; p_uid=U000000; Hm_ct_6bcd52f51e9b3dce32bec4a3997715ac=6525*1*10_30835064740-1583844255125-466273!5744*1*xdc1812547560; Hm_up_6bcd52f51e9b3dce32bec4a3997715ac=%7B%22islogin%22%3A%7B%22value%22%3A%221%22%2C%22scope%22%3A1%7D%2C%22isonline%22%3A%7B%22value%22%3A%221%22%2C%22scope%22%3A1%7D%2C%22isvip%22%3A%7B%22value%22%3A%220%22%2C%22scope%22%3A1%7D%2C%22uid_%22%3A%7B%22value%22%3A%22xdc1812547560%22%2C%22scope%22%3A1%7D%7D; log_Id_click=1; Hm_lvt_feacd7cde2017fd3b499802fc6a6dbb4=1595575203; Hm_up_feacd7cde2017fd3b499802fc6a6dbb4=%7B%22islogin%22%3A%7B%22value%22%3A%221%22%2C%22scope%22%3A1%7D%2C%22isonline%22%3A%7B%22value%22%3A%221%22%2C%22scope%22%3A1%7D%2C%22isvip%22%3A%7B%22value%22%3A%220%22%2C%22scope%22%3A1%7D%2C%22uid_%22%3A%7B%22value%22%3A%22xdc1812547560%22%2C%22scope%22%3A1%7D%7D; Hm_ct_feacd7cde2017fd3b499802fc6a6dbb4=5744*1*xdc1812547560!6525*1*10_30835064740-1583844255125-466273; Hm_up_facf15707d34a73694bf5c0d571a4a72=%7B%22islogin%22%3A%7B%22value%22%3A%221%22%2C%22scope%22%3A1%7D%2C%22isonline%22%3A%7B%22value%22%3A%221%22%2C%22scope%22%3A1%7D%2C%22isvip%22%3A%7B%22value%22%3A%220%22%2C%22scope%22%3A1%7D%2C%22uid_%22%3A%7B%22value%22%3A%22xdc1812547560%22%2C%22scope%22%3A1%7D%7D; Hm_ct_facf15707d34a73694bf5c0d571a4a72=5744*1*xdc1812547560!6525*1*10_30835064740-1583844255125-466273; announcement=%257B%2522isLogin%2522%253Atrue%252C%2522announcementUrl%2522%253A%2522https%253A%252F%252Flive.csdn.net%252Froom%252Fyzkskaka%252Fats4dBdZ%253Futm_source%253D908346557%2522%252C%2522announcementCount%2522%253A0%257D; Hm_lvt_facf15707d34a73694bf5c0d571a4a72=1596946584,1597134917,1597155835,1597206739; searchHistoryArray=%255B%2522%25E8%258F%259C%25E9%25B8%259FIT%25E5%25A5%25B3%2522%252C%2522%25E5%25AE%25A2%25E6%259C%258D%2522%255D; log_Id_pv=7; log_Id_view=8; dc_sid=c0efd34d6da090a1fccd033091e0dc53; TY_SESSION_ID=7d77f76f-a4b1-43ef-9bb5-0aebee8ee475; c_ref=https%3A//www.baidu.com/link; c_first_ref=www.baidu.com; c_first_page=https%3A//www.csdn.net/; Hm_lvt_6bcd52f51e9b3dce32bec4a3997715ac=1597245305,1597254589,1597290418,1597378513; c_segment=1; dc_tos=qf1jz2; Hm_lpvt_6bcd52f51e9b3dce32bec4a3997715ac=1597387359'}

url = 'https://www.csdn.net/'
reponse = requests.get(url,headers=header)
#      
print(reponse.text)
session
session:서버 에 기 록 된 정 보 를 통 해 스토리 보드 사용자 의 신분 을 확인 합 니 다.
이 세 션
세 션 대상 은 고급 방법 으로 요청 을 뛰어넘어 특정 인 자 를 유지 할 수 있 습 니 다.예 를 들 어 같은 Session 인 스 턴 스 사이 에 Cookie 를 저장 할 수 있 습 니 다.브 라 우 저 처럼 저 희 는 매번 Cookie 를 요청 할 필요 가 없습니다.Session 은 후속 요청 에 가 져 온 Cookie 를 자동 으로 추가 합 니 다.이러한 처리 방식 은 같은 사이트 의 연속 요청 에 특히 편리 합 니 다.
신뢰 하지 않 는 SSL 인증서 처리
SSL 인증서 가 무엇 입 니까?
SSL 인증 서 는 디지털 인증서 의 종류 로 운전면허증,여권,영업 허가증 과 유사 한 전기 사본 이다.
서버 에 설정 되 어 있 기 때문에 SSL 서버 인증서 라 고도 합 니 다.SSL 인증 서 는 SSL 프로 토 콜 을 준수 하고 신뢰 받 는 디지털 인증서 발급 기관 CA 가 서버 인증 후 발급 하 며 서버 인증 과 데이터 전송 암호 화 기능 을 갖 추고 있 습 니 다.
우 리 는 증서 가 그다지 합격 하지 못 한 사이트 에 올 라 갔다.
在这里插入图片描述

 import requests
url = 'https://inv-veri.chinatax.gov.cn/'

resp = requests.get(url)

print(resp.text)
그것 은 잘못 을 신고 했다.
在这里插入图片描述
코드 를 수정 해 보도 록 하 겠 습 니 다.

import requests
url = 'https://inv-veri.chinatax.gov.cn/'

resp = requests.get(url,verify = False)

print(resp.text)
우리 의 코드 는 또 성공 적 으로 오 를 수 있 게 되 었 다.
在这里插入图片描述
python 파충류 요청 모듈 requests 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 python 파충류 requests 모듈 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 바 랍 니 다!

좋은 웹페이지 즐겨찾기