By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
440,536 Members | 1,504 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 440,536 IT Pros & Developers. It's quick & easy.

curl javascript form completion

P: n/a
Hello, can someone please tell me the correct way to use "curl" to complete
an online form? I am trying to eventually retrieve my account balance via
a cron job that will email me the parsed output of the web page that gets
returned from the curl form completion.

The page I am trying to access is https://retire.hartfordlife.com/index.html
and the html block that contains the form is:

<form method="post" name="form1"
action="https://retire.hartfordlife.com/HartfordOnline/Login"><input
type="hidden" name="target" value="MultiRole" /> <table width="100%"
border="0" cellspacing="0" cellpadding="2" bgcolor="#e2e9f1">
<tr>
<td colspan="2"><font color="#000000" face="Verdana, Arial, Helvetica,
sans-serif" size="3"><strong><font size="2">Hartford<em>Online</em>
Login</font></strong></font></td>
</tr>
<tr>
<td nowrap><font face="Verdana, Arial, Helvetica, sans-serif"
size="2">User
ID</font></td> <td><input type="text" size="18" name="user" tabindex="1"
value=""/></td>
</tr>
<tr>
<td><font face="Verdana, Arial, Helvetica, sans-serif"
size="2">PIN</font></td> <td><input type="password" size="18"
tabindex="2"
name="password" value=""/></td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="2"
bgcolor="#e2e9f1">
<tr>
<td nowrap><a tabindex="4"
href="https://retire.hartfordlife.com/HartfordOnline/ChallengePhrase"><fonts
ize="1" face="Verdana, Arial, Helvetica, sans-serif">Forgot Your
PIN?</font></a><font size="1" face="Verdana, Arial, Helvetica,
sans-serif"><br /><a tabindex="5"

href="HartfordOnline">https://retire.hartfordlife.com/Enrollment/Enroll">Har
tfordOnline
Enroll</a></font></td> <td><a tabindex="3"
href="javascript:document.forms['form1'].submit()"><img src="imgs/lock.gif"
width="13" height="16" border="0" title="ssl"><img src="imgs/login.gif"
width="39" height="16" border="0" /></a>
</td>
</tr>
</table>
</form>

I don't know how to handle the
_href="javascript:document.forms['form1'].submit()"_ but what is failing to
return the desired page is this command:

/usr/bin/curl -A "Mozilla/4.0" -F user=myuser -F password=mypasswd \
-F form1="https://retire.hartfordlife.com/HartfordOnline/Login" \
-F target="MultiRole" https://retire.hartfordlife.com/index.html \
results.html


I would really, really appreciate any help that anyone can offer about the
correct curl command to use to complete this form.

Apr 6 '06 #1
Share this Question
Share on Google+
1 Reply


P: n/a
On 2006-04-06, ynotssor <yn******@example.net> wrote:
Hello, can someone please tell me the correct way to use "curl" to complete
an online form? I am trying to eventually retrieve my account balance via
a cron job that will email me the parsed output of the web page that gets
returned from the curl form completion.

The page I am trying to access is https://retire.hartfordlife.com/index.html
and the html block that contains the form is:
[...]
I don't know how to handle the
_href="javascript:document.forms['form1'].submit()"_ but what is failing to
return the desired page is this command:
I don't think the fact that the form is submitted with a JavaScript call
to the DOM rather than by the browser's builtin way of handling an HTML
"submit" button makes any difference, fortunately. What the server gets
sent is the same, and that's the point at which curl steps in.
/usr/bin/curl -A "Mozilla/4.0" -F user=myuser -F password=mypasswd \
-F form1="https://retire.hartfordlife.com/HartfordOnline/Login" \
-F target="MultiRole" https://retire.hartfordlife.com/index.html \
> results.html


I would really, really appreciate any help that anyone can offer about the
correct curl command to use to complete this form.


I think I got most of the way there with this:

curl -A "Mozilla/5.0 (X11; U; Linux i686; en-GB; rv:1.7.12) Gecko/20050920 Firefox/1.0.7" \
-d "target=MultiRole&user=bla&password=bla" \
https://retire.hartfordlife.com/HartfordOnline/Login > results.html

Try it with your real username and password (where I've put "bla"). Your
abbreviated user agent string may well be fine, but to be on the safe
side I used exactly the same thing Firefox was using.

You probably also will need to add the options "-a ./cookies -b
../cookies" because you may need cookies when it comes to actually
interacting with the site properly.

I think you want -d for the postdata, not -F. -F is for
multipart/form-data data which is a different data format (usually used
for file uploads). This form is just an urlencoded one, for which you
use -d.

A really good way of figuring these out is to use Firefox's "Tamper
Data" extension, which lets you see exactly what it submitted to the
server and exactly what came back.
Apr 12 '06 #2

This discussion thread is closed

Replies have been disabled for this discussion.