Python使用百度API上传文件到百度网盘代码分享

yipeiwu_com7年前Python基础

关于如何获取 access_token 这个可以自己查百度开放的OAuth 2.0 的 API。这里不做介绍。

第三方 Python 库

poster

复制代码 代码如下:

# coding:UTF-8
import urllib
import urllib2

__author__ = 'Administrator'
from poster.encode import multipart_encode
from poster.streaminghttp import register_openers

register_openers()

def upload(fileName):
    """
    通过百度开发者 API 上传文件到百度云
    """
    datagen, headers = multipart_encode({"file": open("E:\\PHPTest\\Test1\\%s"%fileName, "rb")})
    baseurl = "https://pcs.baidu.com/rest/2.0/pcs/file?"
    args = {
        "method": "upload",
        "access_token": "0.a2834e35964a7b0704242wef160507c1.2592000.1386326697.1060338330-1668780",
        "path": "/apps/ResourceSharing/%s"%fileName
    }
    encodeargs = urllib.urlencode(args)
    url = baseurl + encodeargs

    print(url)

    request = urllib2.Request(url, datagen, headers)
    result = urllib2.urlopen(request).read()
    print(result)


upload("host.txt")

相关文章

用Python实现二叉树、二叉树非递归遍历及绘制的例子

用Python实现二叉树、二叉树非递归遍历及绘制的例子

前言 关于二叉树的实现与遍历,网上已经有很多文章了,包括C, C++以及JAVA等。鉴于python做为脚本语言的简洁性,这里写一篇小文章用python实现二叉树,帮助一些对数据结构不太...

Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程

具体环境: Ubuntu 14.04 Python 2.7.6 Django 1.7.1 Virtualenv name:test Nginx uwsgi 假设 项目文件夹位于 /dat...

Python 实现数组相减示例

问题描述: 有2个数组如下 a = [3,3,3,4,4,4,5,6,7] b = [3,3,4,4] 第1题:从数组a中删除所有在数组b中出现过的元素。对于上例来说,a删除结束...

python获取Linux发行版名称

我必须从Python脚本中获取Linux发行版名称。dist平台模块中有一个方法: import platform platform.dist() 但在我的Arch Linux下...

Python实现获取命令行输出结果的方法

本文实例讲述了Python实现获取命令行输出结果的方法。分享给大家供大家参考,具体如下: Python获取命令行输出结果,并对结果进行过滤找到自己需要的! 这里以获取本机MAC地址和IP...