gpt4 book ai didi

python - 使用python mechanize上传文件

转载 作者:行者123 更新时间:2023-12-04 16:18:59 27 4
gpt4 key购买 nike

我在 Windows 10 笔记本电脑上。
当我在本地计算机上手动打开 submit.html 单击并浏览到 namo.jpg namo.png 然后提交时,我让网站处理我的图像并在 15 秒内返回结果文件。
但是我似乎无法使用 Python mechanize 让它做同样的事情,当它运行脚本时,mechanize_results.html 文件返回太快,并在他们的页面中告诉我“上传的文件不是有效图像。只有 JPG , PNG 和 GIF 文件是允许的.."
不知道我必须改变什么才能让网站将我的 python mechanize 脚本提交的文件识别为图像文件。

我的 submit.html 文件有这个

 <form name="myform" id="myform" action="http://deepdreamgenerator.com/upload-im" enctype="multipart/form-data" method="POST" id="upload-form">
<input type="hidden" name="_token" value="pfC1a6HGVdbWO7mCmKVkqVinCkSYOKkQxXZV9NY1">
<input type="file" name="file" id="upload"/>
<input type="submit" />
</form>


我的 python Mechanize 脚本有这个
进口 Mechanize
filename = 'C:/Users/tintran/Desktop/namo.png'
url = "file:///C:/Users/tintran/Desktop/submit.html"
br = mechanize.Browser()
br.set_handle_robots(False) # ignore robots
br.open(url)
br.select_form('myform')
br.set_all_readonly(False)
br.form.add_file(open(filename,'r'))
res = br.submit()
content = res.read()
with open("mechanize_results.html", "w") as f:
f.write(content)

最佳答案

https://docs.python.org/2/library/functions.html#open

If mode is omitted, it defaults to 'r'. The default is to use text mode, which may convert '\n' characters to a platform-specific representation on writing and back on reading. Thus, when opening a binary file, you should append 'b' to the mode value to open the file in binary mode, which will improve portability. (Appending 'b' is useful even on systems that don’t treat binary and text files differently, where it serves as documentation.) See below for more possible values of mode.



这里都是关于 Windows 的。所以只需使用 'rb' 来打开 PNG 文件。

关于python - 使用python mechanize上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32540355/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com