Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

how to call perl script from html using python

80 views
Skip to first unread message

mulla...@gmail.com

unread,
Aug 14, 2012, 1:12:48 AM8/14/12
to
Hi,

I wanna call perl script in HTML form n store that data in DB using Python.

How can i do this.......??

Please help me

Thank you
Pervez

Simon Cropper

unread,
Aug 14, 2012, 1:22:18 AM8/14/12
to pytho...@python.org
Google you question.

Many solutions already exist on the Internet.

--
Cheers Simon

Simon Cropper - Open Content Creator

Free and Open Source Software Workflow Guides
------------------------------------------------------------
Introduction http://www.fossworkflowguides.com
GIS Packages http://www.fossworkflowguides.com/gis
bash / Python http://www.fossworkflowguides.com/scripting

mulla...@gmail.com

unread,
Aug 14, 2012, 1:31:49 AM8/14/12
to
Hey Simon,

Thank You for your mail and time,

Yest I spent entire day for this , But I didn't get any solution for this problem .I google it but am not able to get any solution for this

Simon Cropper

unread,
Aug 14, 2012, 1:44:43 AM8/14/12
to pytho...@python.org
Then you should outline what you have tried and what the problems you
encountered that way people can help.

Steven D'Aprano

unread,
Aug 14, 2012, 2:00:06 AM8/14/12
to
On Mon, 13 Aug 2012 22:12:48 -0700, mullapervez wrote:

> Hi,
>
> I wanna call perl script in HTML form n store that data in DB using
> Python.
>
> How can i do this.......??
>
> Please help me

Okay, let me give you some general advice first, then some programming
advice

If your question looks like you have put no thought into the question,
you will get answers that also have no thought put into them.

Try to write proper English sentences. We will make allowances for non-
native English speakers, and simple typos, but if u cnt b bothrd 2 rite
gd we cnt b bothrd 2 answr gd ethr.


To solve your programming problem, break it up into smaller pieces:

1) write some code to get a perl script from some HTML;

2) write some more code to take a perl script and run it, collecting the
results;

3) write some more code to take those results and put them into a
database;

4) finally write some code to put the first three pieces together.


Do you need help on any of these? If so, please tell us:

- What is your experience with Python? Complete newbie, beginner,
intermediate, advanced, expert, guru. Do you know any other programming
languages?

- What you have already tried? Show us your code.

- Show us some *simple* sample data.


The more you help us, the more we can help you.



--
Steven

Pervez Mulla

unread,
Aug 14, 2012, 2:21:34 AM8/14/12
to
Thank you for your advice steven,

I am beginner to this language, I have exp in JAVA and C....

I wanna call perl objects using Python . I checked in internet ,I can make use of inline function for this, But in HTML......??

Thank You

Steven D'Aprano

unread,
Aug 14, 2012, 3:19:25 AM8/14/12
to
On Mon, 13 Aug 2012 23:21:34 -0700, Pervez Mulla wrote:

> I wanna call perl objects using Python . I checked in internet ,I can
> make use of inline function for this, But in HTML......??

You need to explain more about your problem, because I don't understand
what you want to do in detail.

For example:

1) "I have a URL to a perl script, like this:

http://example.com/somewhere/script.pl

and I want to download the script, run it, and collect the results."

Difficulty: (0 is trivial, 10 is impossible) About 2 or 3.


2) "I have a web page like this:

http://example.com/somewhere/homepage.html

Inside this web page I have a block of text that is actually Perl code. I
want to download the HTML page, extract the Perl code, and run it."

Difficulty: (0 is trivial, 10 is impossible) Between 6 and 10, depending
on the exact details of how the Perl code is stored.


Please explain in more detail what you want to do.

Where is the Perl code? In a script? Inside a HTML file? Mixed in with
other text, or in a HTML element of its own?

Once you know where the Perl code lives, you can write a function to
extract it. If you don't know where the code lives, you can't.

Once you have the Perl code, you can then run it using the subprocess
module, and collect its results.

Once you have the results, you can store it in a database.



--
Steven

Pervez Mulla

unread,
Aug 16, 2012, 3:23:05 AM8/16/12
to
On Tuesday, August 14, 2012 10:42:48 AM UTC+5:30, Pervez Mulla wrote:
On Tuesday, August 14, 2012 10:42:48 AM UTC+5:30, Pervez Mulla wrote:
On Tuesday, August 14, 2012 10:42:48 AM UTC+5:30, Pervez Mulla wrote:
On Tuesday, August 14, 2012 10:42:48 AM UTC+5:30, Pervez Mulla wrote:
Hey Steven ,

Thank you for your response,

I will in detail now about my project,

Actually the project entire backend in PERL language , Am using Django framework for my front end .

I have written code for signup page in python , which is working perfectly .

In HTml when user submit POST method, it calling Python code ....Instead of this I wanna call perl script for sign up ......

below in form for sign up page in python ....

form.py
from django import forms
from django.contrib.auth.models import User
from django.forms import ModelForm
from user_profile.models import Profile

class RegistrationForm(ModelForm):
username = forms.CharField(label=(u'User Name'))
email = forms.EmailField(label=(u'E-mail'))
password = forms.CharField(label=(u'Password'),widget=forms.PasswordInput(render_value=False))
password1 = forms.CharField(label=(u'Verify Password'),widget=forms.PasswordInput(render_value=False))

class Meta:
model = Profile
exclude = ('user',)

def clean_username(self):
username = self.cleaned_data['username']
try:
User.objects.get(username==username)
except User.DoesNotExist:
return username
raise forms.ValidationError("That username is already taken. Please select another.")

def clean_password(self):
if self.cleaned_data['password'] != self.cleaned_data['password1']:
raise forms.ValidationError("Password didnt match... Please try again")
return self.cleaned_data
-----------------------------------------------------------------------------

view.py


def ProfileRegistration(request):
if request.user.is_authenticated():
return HttpResponseRedirect('/profile/')
if request.method =="POST":
form = RegistrationForm(request.POST)
if form.is_valid():
user = User.objects.create_user(username = form.cleaned_data['username'],
email = form.cleaned_data['email'],
password = form.cleaned_data['password'])
user.save()
profile = Profile(user=user, firstname=form.cleaned_data['firstname'],
lastname=form.cleaned_data['lastname'],
phone=form.cleaned_data['phone'],
title=form.cleaned_data['title'],
companyname=form.cleaned_data['companyname'])
profile.save()
return HttpResponseRedirect('/profile/')
else:
return render_to_response ('register.html',{'form':form},context_instance=RequestContext(request))
else:
form = RegistrationForm()
context = {'form':form}
return render_to_response('register.html', context, context_instance=RequestContext(request))


In view instead invoking python script I wanna invoke Perl script .....for the signup page


Thank You



andrea crotti

unread,
Aug 16, 2012, 7:00:59 AM8/16/12
to Pervez Mulla, pytho...@python.org
2012/8/16 Pervez Mulla <mulla...@gmail.com>:
>
> Hey Steven ,
>
> Thank you for your response,
>
> I will in detail now about my project,
>
> Actually the project entire backend in PERL language , Am using Django framework for my front end .

> I have written code for signup page in python , which is working perfectly .
>
> In HTml when user submit POST method, it calling Python code ....Instead of this I wanna call perl script for sign up ......
>
> below in form for sign up page in python ....

Good that's finally an explanation, so the question you can ask google
was "how do I call an external process from Python",
which has absolutely nothing to with HTML, and is very easy to find
out (hint: subprocess).
0 new messages