물고기 c 노트 - Python 파충류 (2): urllib. urlopen 을 이용 하여 번역 데 이 터 를 보 내 번역 결 과 를 얻 을 수 있 습 니 다.

3586 단어 #Python 학습 노트
다음은 두 가지 예 가 나 올 것 이다.
고양이 그림http://placekitten.com이 사이트 에서 고양이 사진 을 다운 받 았 는데 사이트 가 누 렇 게 된 것 같 아 요.http://placekitten.com/g/400/300맨 뒤에 있 는 400, 300 두 개 를 바 꾸 면 그림 을 얻 을 수 있 고 변경 할 수 있 습 니 다.http://placekitten.com/200/200?image=3 이미지 의 개수 에 따라 다른 그림 가 져 오기)
예 2: Python 으로 브 라 우 저 를 모 의 하고 온라인 에 있 는 사전 을 이용 하여 텍스트 번역 을 합 니 다.
예 1
import urllib.request

response = urllib.request.urlopen("http://www.placekitten.com/g/500/600")  #  urlopen                request  (       ....),               ,         request  ,     urlopen,              


#          
#req = urllib.request.Request("http://www.placekitten.com/g/500/600")
#response = urllib.request.urlopen(req)


#urlopen           ,           ,      read()  。                        

cat_img = response.read()    #cat_img       

with open('cat_500_600.jpg', 'wb') as f:  #      ,          ,   wb           jpg     
    f.write(cat_img)

response 기타 사용 가능 한 함수 테스트:
>>> response.geturl()          #              
'http://placekitten.com/g/500/600'


>>> response.info()            #    HTTPMessage  


>>> print(response.info())
Date: Tue, 06 Feb 2018 14:53:33 GMT
Content-Type: image/jpeg
Content-Length: 26590
Connection: close
Set-Cookie: __cfduid=d6ea851ece87caf6cf1541488d9bc07a11517928813; expires=Wed, 06-Feb-19 14:53:33 GMT; path=/; domain=.placekitten.com; HttpOnly
Accept-Ranges: bytes
X-Powered-By: PleskLin
Access-Control-Allow-Origin: *
Cache-Control: public
Expires: Thu, 31 Dec 2020 20:00:00 GMT
Server: cloudflare
CF-RAY: 3e8ef08c83ec9699-SJC



>>> response.getcode()         #  http   ,200      
200

예 2
우리 가 만난 첫 번 째 문 제 는 번역 상자 에 텍스트 를 넣 고 번역 하 는 것 을 어떻게 모 의 합 니까?우선, 웹 페이지 에서 요 소 를 검토 합 니 다. 우리 가 주목 해 야 할 것 은 Network 입 니 다. 웹 페이지 에서 자동 으로 번역 하 는 단 추 를 누 르 면 상자 에 많은 것 이 나타 납 니 다 (지금 은 나 오지 않 을 것 같 습 니 다), Method 란 아래 Post, Get 등 내용 이 있 습 니 다.이 파일 들 은 모두 브 라 우 저 와 우리 클 라 이언 트 의 통신 내용 으로 클 라 이언 트 와 서버 간 에 응답 을 요청 할 때 자주 사용 하 는 두 가지 방법 입 니 다. 하 나 는 get 이 고 하 나 는 post 입 니 다.정의 상 get 은 서버 에서 데 이 터 를 요청 하 는 것 을 말 하 며, post 는 지정 한 서버 에 처 리 된 데 이 터 를 제출 하 는 것 을 말한다.그러나 현실 에 서 는 get 도 데 이 터 를 제출 하 는 데 자주 사용 된다.방법 은 어떻게 찾 습 니까:http://bbs.fishc.com/thread-67587-1-1.htmlPost 를 누 르 자 우 리 는 Headers, Preview 를 보 았 다.Preview 에서 우 리 는 번역 한 결 과 를 찾 았 다.Headers 의 내용 분석: Remote Address 는 서버 의 IP 주소 와 그 가 열 어 놓 은 포트 번호 Request URL 이 번역 을 실현 하 는 메커니즘 의 주소 Request Method 가 요청 하 는 방법 은 POST 형식 입 니까? 아니면 다른 형식 입 니까? Status Code 상태 코드 입 니까? 200 은 정상 이 고 404 는 페이지 가 없어 졌 습 니 다 Request Headers 클 라 이언 트 (여 기 는 브 라 우 저 입 니 다. Python 코드 를 사용 할 때 코드 를 말 합 니 다) 는 서버 에서 인간 의 방문 여 부 를 판단 하 는 데 자주 사 용 됩 니 다.브 라 우 저 인지 코드 접근 인지 판단 하기 위해 Python 으로 접근 하면 Python 은 기본적으로 Python - urllib + Python (예 를 들 어 Python - urllib / 3.5) 버 전 번호 입 니 다. 이 는 방화벽 으로 식별 하면 브 라 우 저가 아 닌 코드 에서 접근 한 다 는 것 을 알 수 있 기 때문에 화면 에 가 려 질 수 있 습 니 다.따라서 사용자 정의 Agent。Form Data  폼 데 이 터 는 바로 우리 Post 가 제출 한 주요 내용 입 니 다. 그 아래 i 에서 우리 가 번역 할 내용 을 Python 으로 POST 폼 을 어떻게 제출 하 는 지 보 았 습 니 다. 문 서 를 보고 data 두 줄 에 설명 이 있 습 니 다.
번역 결 과 를 어떻게 찾 습 니까?
鱼c笔记——Python爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果_第1张图片
이것 은 단지 초보적인 방안 일 뿐, 사실상 불가능 하 며, 차 단 될 것 이다.

좋은 웹페이지 즐겨찾기