Python机械化:提交带有文件(图像)的表单?

raw*_*rrr 2 python browser image mechanize

有一个带有以下控件的表单(它是一个上传图像控件)

<FileControl(profile_image=<No files added>)>
Run Code Online (Sandbox Code Playgroud)

我应该把什么放在"??????????"中:

br = mechanize.Browser()
br.open(mywebsite)
br.select_form(nr=1)
br.form['profile_image'] = ??????????
br.submit()
Run Code Online (Sandbox Code Playgroud)

我试过了

   br.form['profile_image'] = open("img.jpg")
Run Code Online (Sandbox Code Playgroud)

但得到错误

  File "/usr/local/lib/python2.6/dist-packages/mechanize-0.2.4-py2.6.egg/mechanize/_form.py", line 2784, in __setitem__
    raise ValueError(str(e))
ValueError: value attribute is readonly
Run Code Online (Sandbox Code Playgroud)

cro*_*jer 6

做这个:

br.form.add_file(open(FILENAME), 'text/plain', FILENAME)
br.form.set_all_readonly(False)
Run Code Online (Sandbox Code Playgroud)