博客园相册管理中有上传照片的功能

现在通过requests库模拟上传图片功能

先手动上传图片,用Fiddler转包,查看到上传图片接口请求格式,

------WebKitFormBoundarySKZgXsXRXkvNw6Bi
Content-Disposition: form-data; name="__EVENTTARGET" ------WebKitFormBoundarySKZgXsXRXkvNw6Bi
Content-Disposition: form-data; name="__EVENTARGUMENT" ------WebKitFormBoundarySKZgXsXRXkvNw6Bi
Content-Disposition: form-data; name="__VIEWSTATE" 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
------WebKitFormBoundarySKZgXsXRXkvNw6Bi
Content-Disposition: form-data; name="__VIEWSTATEGENERATOR" 8BEC36A2
------WebKitFormBoundarySKZgXsXRXkvNw6Bi
Content-Disposition: form-data; name="Results$Add$txbNewTitle" ------WebKitFormBoundarySKZgXsXRXkvNw6Bi
Content-Disposition: form-data; name="Results$Add$ckbNewIsActive" on
------WebKitFormBoundarySKZgXsXRXkvNw6Bi
Content-Disposition: form-data; name="Results$Add$txbNewDescription" ------WebKitFormBoundarySKZgXsXRXkvNw6Bi
Content-Disposition: form-data; name="AddImages$ImageFile"; filename="20120611175238_aCNGz.jpg"
Content-Type: image/jpeg

切换到WebForms

思路参考:

https://www.cnblogs.com/yoyoketang/p/7990127.html

https://www.cnblogs.com/titan5750/p/6879114.html

代码如下:

登录部分的代码不复制,只贴出上传图片的代码,登录部分参考https://www.cnblogs.com/yoyoketang/p/7990127.html

 # 上传图片
f = {"AddImages$ImageFile":("57e9d2a834496.jpg",open("/Users/kki/Downloads/57e9d2a834496.jpg","rb"),"image/jpeg")} data4 = {"Results$Add$ckbNewIsActive":"on",
"AddImages$ckbIsActiveImage":"on",
"AddImages$lbkAddImage":"Add",
"AddImages$txbImageTitle":"我来上传图片",
"__VIEWSTATEGENERATOR":"8BEC36A2",
"__VIEWSTATE":"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"
} r4 = s.post(self.add_image_url,files=f,data=data4)

执行代码后,上传图片成功

requests模拟上传照片的更多相关文章

  1. 【转】asp.net(c#)使用HttpWebRequest附加携带请求参数以post方式模拟上传大文件(以图片为例)到Web服务器端

    原文地址:http://docode.top/Article/Detail/10002 目录: 1.Http协议上传文件(以图片为例)请求报文体内容格式 2.完整版HttpWebRequest模拟上传 ...

  2. 【代码笔记】iOS-图片手势,上传照片

    代码: RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController : UIViewControl ...

  3. Iphone H5上传照片被旋转

    最近做项目发现在Iphone下,我们上传图片都会被翻转,最后查阅资料发现,的确是IOS的问题 不说过程,直接解决方法 iOS下,html方式使用<input type="file&qu ...

  4. Android使用XUtils框架上传照片(一张或多张)和文本,server接收照片和文字(无乱码)

    Android上传图片,这里我使用了如今比較流行的XUtils框架.该框架能够实现文件上传.文件下载.图片缓存等等,有待研究. 以下是Android端上传的代码: xUtils.jar下载 Strin ...

  5. vc libcurl 模拟上传文件

    http://www.cnblogs.com/killbit/p/5393301.html 附上这篇文章,因为当时就已经想到了模拟上传,但是因为时间关系,所以就直接用PHP写了.现在改进一下,用VC+ ...

  6. 玩转OneNET物联网平台之HTTP服务① —— 模拟上传温度(TcpClient)

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  7. Django项目:CRM(客户关系管理系统)--61--51PerfectCRM实现CRM客户报名流程学生合同上传照片

    # sales_views.py # ————————47PerfectCRM实现CRM客户报名流程———————— from django.db import IntegrityError # 主动 ...

  8. mui调用本地相册调用相机上传照片

    调用mui的常用库和jquery html部分: <header class="mui-bar mui-bar-nav"> <a class="mui- ...

  9. Requests库上传文件时UnicodeDecodeError: 'ascii' codec can't decode byte错误解析

    在使用Request上传文件的时候碰到如下错误提示: 2013-12-20 20:51:09,235 __main__ ERROR 'ascii' codec can't decode byte 0x ...

随机推荐

  1. iOS自己定义对象保存到本地文件

    我是将聊天记录存到本地,里边用到了自己定义的对象.把数据转成Data格式存到本地.在转Data格式的时候报错了.这时候须要先将自己定义对象进行归档才干够转Data格式. 方法例如以下: 一.在.h文件 ...

  2. JVM完全指南

    JVM完全指南     一:虚拟机内存图解   JAVA程序运行与虚拟机之上,运行时需要内存空间.虚拟机执行JAVA程序的过程中会把它管理的内存划分为不同的数据区域方便管理.     虚拟机管理内存数 ...

  3. golang手动管理内存

    作者:John Graham-Cumming.   原文点击此处.翻译:Lubia Yang(已失效) 前些天我介绍了我们对Lua的使用,implement our new Web Applicati ...

  4. 2015最流行的Android组件、工具、框架大全(转)

    转自:2015最流行的Android组件.工具.框架大全 Android 是目前最流行的移动操作系统之一. 随着新版本的不断发布, Android的功能也日益强大, 涌现了很多流行的应用程序, 也催生 ...

  5. Circling Round Treasures CodeForces - 375C

    C. Circling Round Treasures time limit per test 1 second memory limit per test 256 megabytes input s ...

  6. 【BZOJ3834】[Poi2014]Solar Panels 分块好题

    [BZOJ3834][Poi2014]Solar Panels Description Having decided to invest in renewable energy, Byteasar s ...

  7. Ajax学习笔记(2)--load()方法

    <head runat="server"> <title></title> <script src="http://localh ...

  8. 九度OJ 1045:百鸡问题 (基础题)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:8410 解决:3644 题目描述: 用小于等于n元去买100只鸡,大鸡5元/只,小鸡3元/只,还有1/3元每只的一种小鸡,分别记为x只,y只 ...

  9. 一起来学linux:压缩与解压缩

    Linux场景下一般存在如下的压缩文件格式: 1 .Z compress程序压缩的文件 2 *.gz gzip程序压缩的文件 3 *.bz2 bzip2程序压缩的文件 4 *.tar tar程序打包的 ...

  10. ORACLE DATABASE 10g EXPRESS EDITION LICENSE AGREEMENT

     启动Tomcat之后出现全是英文错误: ORACLE DATABASE 10g EXPRESS EDITION LICENSE AGREEMENT To use this license, yo ...