这是我初始化机械化浏览器的方式
# Browser
br = mechanize.Browser()
# Cookie Jar
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)
# Browser options
br.set_handle_equiv(True)
br.set_handle_gzip(True)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(False)
登录并移至上传页面后,我使用此代码上传
它有效,只是它上传的图像总是不完整,大小为1kb .-
br.select_form(nr=0)
filepath = 'C:\Users\myusernamelol\Desktop\d6sEz.jpg'
br.form.add_file(open(filepath), 'text/plain', 'd6sEz.jpg', nr=0, name='file[]')
br.submit()
什么做机械化不上传完整的图像?
答案 0 :(得分:5)
尝试以二进制模式打开文件:
br.form.add_file(open(filepath, 'rb'), 'text/plain', 'd6sEz.jpg', nr=0, name='file[]')
另外,将text/plain
替换为image/jpeg