我使用 wget 以及 --post-data 和 --save-cookies 选项成功地通过了网站的登录表单。
现在我尝试填写网页的某些字段,然后提交。
问题是,网页上有一个“图灵”隐藏字段,每次都有不同的值。
我尝试的是打开网页,加载我的cookie,并获取图灵值。
然后使用 --post-data 执行另一个 wget 并将我的所有字段放在那里,包括图灵字段。但这不起作用。
另外,网页上有几个表单,所以我想我必须添加表单名称。正确的?
有任何想法吗?
<form action="article.php" method="post" name="postmessage">
<table width="100%" class="table_lines" border="0" cellspacing="0" cellpadding="6">
<tr>
<td>subject</td>
<td><input type="text" name="messageinput[0]" value=""></td>
</tr>
<tr>
<td>tags</td>
<td><input type="text" name="messageinput[1]" value=""></td>
</tr>
<tr>
<td>Message</td>
<td><input type="text" name="messageinput[2]" value=""></td>
</tr>
<td colspan="2" align="center"><input name="mesbut" type="submit" value="Post Message" onclick="document.postmessage.mesbut.value='Posting..'; document.postmessage.mesbut.disabled=true;document.postmessage.submit();"></td>
</table>
<input type="hidden" name="turing" value="wgbyp">
</form>
所以我尝试的是(登录后):
/usr/bin/wget -q --load-cookies cookie.txt http://www.myurl.com/article.php -O output.html
TURING=$(sed -n -e 's/.*name="turing" value="\(.*\)">.*/\1/p' output.html)
/usr/bin/wget -q --load-cookies cookie.txt --post-data "messageinput[0]=mysubject&messageinput[1]=&messageinput[2]=mymessage&turing=${TURING}&postmessage=1&mesbut=1" http://www.myurl.com/article.php -O output2.html
但它不起作用。
第一个 wget 需要使用 --save-cookies。
在你的例子中,你在 cookie.txt 中得到了什么吗?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)