Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Login using Python in basic HTML form [duplicate]

Possible Duplicate:
Python: How do you login to a page and view the resulting page in a browser?

I wanted to know how I can perform login's on pages like http://www.deshabhimani.com/signin.php which has a php-based login prompt using python. This form is used to login to http://www.deshabhimani.com/epaper.php

The site does not provide a HTTP API.

I want to later use python to download all the pages of the epaper(which are individual) and then make it into a final one file pdf.

The file which I want to download is http://www.deshabhimani.com/epaper.php?page=43210&ddate=27-07-2012&edition=Kochi which is only accessible by logging in

like image 310
Amith KK Avatar asked Feb 19 '23 17:02

Amith KK


1 Answers

well first of all check the page code , to know what kind of method so send a data , and the username and password name

<form action="signin.php" method="post" name="log_in" id="log_in" onsubmit="return login()">
                    <label for="name">User Name:</label><br>
                    <input type="text" maxlength="80" size="25" id="username" name="username" style="border:1px dotted #1a64a3; margin-bottom:10px">
                    <label for="email">Password:</label><br>
                    <input type="password" maxlength="80" size="25" id="password" name="password" style="border:1px dotted #1a64a3">
                    <input type="submit" name="submit" value="Login" style="background:url(images/submit.gif) no-repeat; width:59px; height:22px; color:#FFFFFF; padding-bottom:3px">
</form>

as you see from above , first we scope to the form ,to see what kind of method and what is the name of fileds

so let's handle it in python

import urllib
login_data=urllib.urlencode({'username':'your username','password':'your password','submit':'Login'}) # replace username and password with filed name 
op = urllib.urlopen('www.exmaple.com/sign-in.php',login_data)
like image 51
Hamoudaq Avatar answered Mar 04 '23 01:03

Hamoudaq