gpt4 book ai didi

python - 使用 Linux 命令行发布表单和上传文件

转载 作者:太空狗 更新时间:2023-10-29 12:21:42 26 4
gpt4 key购买 nike

我需要使用 Linux 命令行向网站发布表单和上传文件。

我做了一些搜索,我想用 Python 编写脚本。

我需要先登录该网站,保存 cookie,然后发布表单数据并将文件上传到该网站。

详情如下:

该网站的登录页面是:hxxp://www.example.com/login.html

<form action="/signin.html" method="post"> 
Username:<input type="text" name="username">
Password:<input type="password" name="password">
<input type="hidden" name="referer" value="http://www.example.com/">
<input type="submit" name="submit" value=" Login ">
</form>

上传页面为:hxxp://www.example.com.com/upload/

<form action="http://www.example.com:81/upload/upload.cgi" enctype="multipart/form-data" method="post"> 
<input type="hidden" name="MAX_FILE_SIZE" value="314572800" />

File:
<input name="filename[]" type="file" />
Type:
<input type="radio" name="typeID" value=1> Option One
<input type="radio" name="typeID" value=2> Option Two
<input type="radio" name="typeID" value=3> Option Three
Title:
<input type="text" name="title" >
Description:
<textarea name="description"></textarea>

<input type="checkbox" name="agree" value="agree_terms"> I Accept Terms

<input type="submit" value="Upload It!">
</form>

此表单包含单选、文本、复选框、文件等输入。

请给我一些提示!

我使用的是 CentOS 5.5,安装了 Python、wget 和 PHP。我认为这可以在 Python 脚本中完成。

非常感谢!您的回答将是我收到的最好的圣诞礼物。 ;)

最佳答案

您当然可以使用 urllib2 来完成此任务。阅读有关如何处理 cookie 和如何上传文件的文档。但是,我认为使用 mechanize可以节省很多时间。 Mechanize 允许您像使用浏览器一样处理网页:

import mechanize

br = mechanize.Browser()
br.open("http://www.example.com/")
br.select_form()
br['username'] = 'user'
br['password'] = 'pass'
br.submit()

etc.

关于python - 使用 Linux 命令行发布表单和上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4382788/

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