>  기사  >  백엔드 개발  >  Python에서 http 및 https 프록시 사용에 대한 설명 예

Python에서 http 및 https 프록시 사용에 대한 설명 예

不言
不言원래의
2018-05-07 14:13:352958검색

이 글은 주로 Python용 http 및 https 프록시 사용 사례를 소개합니다. 이제 모든 사람과 공유합니다. 도움이 필요한 친구들이 참고할 수 있습니다.

Python을 사용하여 중국에서 인터넷에서 데이터를 크롤링할 때 일부 웹사이트 또는 API 인터페이스는 속도가 제한되거나 차단됩니다. 이 경우 프록시를 사용하면 크롤링 프로세스 속도가 빨라지고 요청 실패가 줄어들 수 있습니다. Python 프로그램이 프록시를 사용하는 주요 방법은 다음과 같습니다.

(1) 일부 네트워크 라이브러리 또는 크롤러 프레임워크는 데이터를 크롤링하기 위해 코드에 사용됩니다. 일반적으로 이러한 프레임워크는 설정 에이전트를 지원합니다. 예:

<span style="font-size:14px;">import urllib.request as urlreq 
# 设置https代理 
ph = urlreq.ProxyHandler({&#39;https&#39;: &#39;https://127.0.0.1:1080&#39;}) 
oper = urlreq.build_opener(ph) 
# 将代理安装到全局环境,这样所有请求都会自动使用代理 
urlreq.install_opener(oper) 
res = oper.open("https://www.google.com") 
print(res.read())</span>

<span style="font-size:14px;">import requests as req 
print(req.get("https://www.google.com", proxies={&#39;https&#39;: &#39;https://127.0.0.1:1080&#39;}).content)</span>

(2) 사용된 라이브러리가 이를 제공하지 않는 경우 프록시 인터페이스를 설정하지만 하위 계층은 urllib 및 요청과 같은 라이브러리를 사용합니다. 일반적으로 사용되는 네트워크 라이브러리는 이러한 환경 변수를 자동으로 식별하고 사용합니다. 요청을 시작하기 위해 변수로 설정된 프록시 설정은 다음과 같습니다.

(3)

위의 두 가지 방법이 쓸모가 없다면 모니터링하고 가로챌 수 있는 일부 도구와 라이브러리를 사용할 수도 있습니다. (Fiddler, mitmproxy)와 같은 네트워크 패킷을 수정하여 http 요청 패킷을 가로채고 주소를 수정하여 프록시를 사용하는 효과를 얻습니다. 관련 권장 사항:

파이썬 소켓을 사용하여 http(s) 요청 방법 보내기

위 내용은 Python에서 http 및 https 프록시 사용에 대한 설명 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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