我目前正在尝试使用urllib2和urllib2_file库启动文件上传.这是我的代码:
import sys import urllib2_file import urllib2 URL='http://aquate.us/upload.php' d = [('uploaded', open(sys.argv[1:]))] req = urllib2.Request(URL, d) u = urllib2.urlopen(req) print u.read()
我已将此.py文件放在我的"我的文档"目录中,并在"发送到"文件夹中放置了一个快捷方式(快捷方式URL为).
当我右键单击一个文件时,选择Send To,然后选择Aquate(我的python),它会打开命令提示符一瞬间然后关闭它.什么都没上传.
我知道可能发生了错误,因此我逐行将代码输入到CL python中.当我跑u=urllib2.urlopen(req)
线时,我没有得到错误;
替代文字http://www.aquate.us/u/55245858877937182052.jpg
相反,光标只是在该行下方的新行上开始闪烁.我等了几分钟,看看是否会发生什么事,但它就像那样.为了让它停止,我不得不按ctrl + break.
这个脚本有什么用?
提前致谢!
[编辑]忘了提 - 当我在没有请求数据(文件)的情况下运行脚本时,它就像魅力一样运行.这是urllib2_file的问题吗?
[编辑2]:
import MultipartPostHandler, urllib2, cookielib,sys import win32clipboard as w cookies = cookielib.CookieJar() opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookies),MultipartPostHandler.MultipartPostHandler) params = {"uploaded" : open("c:/cfoot.js") } a=opener.open("http://www.aquate.us/upload.php", params) text = a.read() w.OpenClipboard() w.EmptyClipboard() w.SetClipboardText(text) w.CloseClipboard()
如果您通过命令行运行它,该代码就像一个魅力.