Python - Πώς να submit μια HTML form με Javascript στοιχεία?

Γενικά θέματα για τις γλώσσες προγραμματισμού που δεν καλύπτονται από τις άλλες περιοχές της κατηγορίας.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
siropio2
Δημοσιεύσεις: 1
Εγγραφή: 06 Ιαν 2011 08:23
Τοποθεσία: Πειραιάς
Επικοινωνία:

Python - Πώς να submit μια HTML form με Javascript στοιχεία?

Δημοσίευση από siropio2 » 06 Ιαν 2011 09:10

Χαιρετε παιδες,

θα ηθελα την συμβουλη σας σε ενα θεματακι που εχω.
Θελω να κανω αυτοματο SUBMIT φορμας με ενα script σε Python. Οταν η φορμα περιεχει μονο στοιχεια HTML το εχω καταφερει και ειναι σχετικα ευκολο και με την Library mechanize αλλα και με την απλη urllib2.

Το θεμα μου ειναι πως μπορω να κανω submit την φορμα οταν μεσα εχει Javascript.

Παραδειγμα:

Εστω οτι εχεις την εξης φορμα:

Κώδικας: Επιλογή όλων

<form name = "form1" method="POST"
	<input type=hidden name="prevcat">
	<input type=hidden name="prevcat1">
	<b>Ημερομηνία&#58;&nbsp;</b>
       <SELECT class="search" name="dateduty" onchange = "javascript&#58;document.comp.prevcat.value=document.comp.dateduty.selectedIndex;">
			<Option value="-1">Επιλέξτε ημερομηνία
			<Option value="5/1/2011" > 5/1/2011
			<Option value="6/1/2011" selected> 6/1/2011
       </SELECT>
       <strong>Περιοχή&#58;&nbsp;</strong>
	<SELECT class="search" NAME="areaid" onchange = "javascript&#58;document.comp.prevcat.value=document.comp.dateduty.selectedIndex;document.comp.prevcat1.value=document.comp.areaid.selectedIndex;">
			<Option value="0">Όλες 
			<Option value="95"> ΑΓ.ΑΝΑΡΓΥΡΟΙ
			<Option value="83"> ΑΓ.ΑΡΤΕΜΙΟΣ
       </SELECT>
      <script language=javascript>
		function validateitems&#40;&#41;&#123;
			var myerr='Πρέπει να επιλέξετε &#58;\n\n';
			if &#40;document.comp.dateduty.selectedIndex==0&#41; myerr=myerr+'Ημερομηνία\n';
			if &#40;myerr!='Πρέπει να επιλέξετε &#58;\n\n'&#41; &#123;
				alert&#40;myerr&#41;;
				return false;
			&#125;
			return true;
										
		&#125;
	</script>
						   
        <input type="image" src="/Portals/_default/Skins/fsa/images/search1.gif" onClick="if &#40;!validateitems&#40;&#41;&#41; return false;" alt="Αναζήτηση">
</form> 
Aν η form ηταν απλη HTML τοτε με την mechanize θα μπορουσες να κανεις το εξης:

Κώδικας: Επιλογή όλων

import mechanize

br = mechanize.Browser&#40;&#41;
br.open&#40;"http&#58;//www.example.com"&#41;
br.select_form&#40;predicate=lamda&#40;form&#41;&#58; 'form1' in form.action&#41;
br&#91;'dateduty'&#93; = '6/1/2011'
br&#91;'areaid'&#93; = '83'

response = br.submit&#40;&#41;
Αλλα η Javascript με εμποδιζει εχοντας τις συναρτησεις της onclick και onchange.


Ευχαριστω εκ των προταιρων

Απάντηση

Επιστροφή στο “γλώσσες προγραμματισμού - γενικά”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες