중화사전망 - 자전 검색 - 7 소 파이썬 SDK 로 동기화 스크립트를 작성하고 만드는 방법

7 소 파이썬 SDK 로 동기화 스크립트를 작성하고 만드는 방법

7 소 클라우드 스토리지의 파이썬 언어 버전 SDK (이하 파이썬-SDK) 는 파이썬 클라우드 스토리지 API 프로토콜에 대한 계층 캡슐화로 파이썬 개발자에게 사용하기 쉬운 개발 도구 세트를 제공합니다. Python 개발자는 Python-SDK 에 도킹할 때 7 소 클라우드 스토리지 API 프로토콜에 대한 세부 사항을 알 필요가 없고 HTTP 프로토콜 및 원리에 대한 심층적인 이해도 필요하지 않지만 기본적인 HTTP 지식이 있으면 오류 시나리오를 보다 효율적으로 처리할 수 있습니다.

저는 최근에 클라우드 스토리지에 사진을 넣으려는 markdown 정적 블로그를 만들었습니다.

조사 결과, 나는 기이한 소가 나의 개인적인 요구를 만족시킬 수 있다고 생각하여 그것을 선택했다.

사진 한 장을 인용하면, 너는 먼저 클라우드에 업로드해야 한다.

기우사이트 백그라운드에서 파일을 업로드할 수 있지만 먼저 로그인한 다음 사진 한 장을 선택하고 연결 주소를 설정해야만 업로드할 수 있습니다.

이 과정은 다소 번거롭기 때문에 7 우운에서 제공하는 SDK 로 동기화 도구를 써서 파일의 증분 동기화를 용이하게 하고 싶다.

이 생각이 있으면 바로 행동하세요. 오전 어느 날, 마침내 이 도구를 써서 GitOSC 와 github 에 올려놓았다.

123456789101111213 2223242526272829303132333435363738 39404142434454647484950515253545555 727374757677787980818283848586878899091929394959 6979899100/kloc/ Kloc-0/06107108109110/ Kloc-0/15116117/kloc-; /usr/bin/env python#-*- 인코딩: utf-8-*-# # author = "Heqing pan" # author _ email = 。

설치 방법은 프로젝트 설명에 설명된 대로 pip 를 사용하여 qiniu 를 설치할 수 있습니다. 물론 소스 코드를 직접 복제하여 직접 사용할 수도 있습니다. 나는 일반적으로 소스 코드를 직접 복제하는 것을 좋아하기 때문에 SDK 에 약간의 변경을 하는 것은 매우 쉽다.

Python SDK 의 최신 버전은 요청 라이브러리에 의존해야 하므로 미리 설치해야 합니다. 물론 설치 방법은 pip 설치 요청도 사용할 수 있습니다.

개발 환경

파이썬 개발 환경에는 많은 옵션이 있습니다. Vim, emacs, sublime text 등과 같은 문자를 좋아한다면. , 좋은 선택입니다. 만약 당신이 IDE 를 좋아한다면, 가장 인기 있는 것은 PyCharm 입니다. PyCharm 의 최신 버전은 무엇입니까? 여기에서 다운로드하십시오.

액세스 키 및 비밀 키

우리는 7 소 클라우드 스토리지에 대한 권한 검증 메커니즘이 액세스 키와 비밀 키라는 한 쌍의 키를 기반으로 한다는 것을 알고 있습니다. 여기서 액세스 키는 공개 키이고 비밀 키는 개인 키입니다. 이 열쇠는 기이한 소 뒤에서 얻을 수 있다.

솜씨를 시험해 보다

음, 위의 준비를 마치면 간단한 파일을 업로드하고 연습 할 것입니다.

1234python # coding = utf-8 _ _ author _ =' jemy''' 이 예는 간단한 파일 업로드를 보여줍니다.

이 예에서 SDK 는 파일 크기에 따라 테이블 또는 세그먼트 업로드를 선택합니다.

12345678910112131 2223242526272828 액세스 키 > secretKey = "< 비밀 키 > # 분석 결과 정의 parseRet(retData, respInfo):? RetData! = 없음:? 인쇄 ("파일 업로드에 성공했습니다! )? Print("Hash: "+retData["hash"])? Print("Key: "+retData["key"])? # 확장 매개변수 확인? RetData.items () 에 있는 k, v:? K[:2] == "x: ":? 인쇄 (k+":"+v)? # 기타 매개변수 확인? RetData.items () 에 있는 k, v:? K[:2] == "x: "또는 k = =" 해시 "또는 k = =" 키 ":? 계속할까요? 그렇지 않으면:? 인쇄 (k+":"+str (v))? 그렇지 않으면:? Print ("파일 업로드 실패! )? Print ("error:"+respinfo.text _ body) # 키가 업로드되지 않았습니다. http 요청에 키 매개변수 defupload _ without _ key (bucky) 가 지정되지 않았습니다 # 업로드 자격 증명 생성? Auth = qiniu 입니다. Auth(accessKey, secretKey)? Uptoken = auth.upload _ token (bucket, key=None)? # 파일 업로드? RetData, respinfo = qiniu.put _ file (uptoken, None, filePath)? # 결과 구문 분석? ParseRet(retData, respInfo)def main ():? Bucket = "if-pbl "? Filepath = "/users/jemy/documents/jemy.png"? Upload_without_key(bucket, filepath) if _ _ name _ _ = = "_ _ main _":? Main () 의 실행 결과는 다음과 같습니다.

파일 업로드에 성공했습니다!

해시: FP 0xr6tm 4 yzmeikxw 7 ezzmeysq 8

키: FP 0xr6tm 4 yzmeikxw 7 ezzmeysq 8

위에서 볼 수 있듯이, 기이한 소의 파이썬 SDK 를 사용하여 파일을 업로드하는 가장 기본적인 단계는 다음과 같습니다.

1. 업로드 자격 증명 생성

파일 업로드

3. 응답 결과 분석