Hi:<br><br>My problem is:<br><br>Who I get many Internet Explorer instances in threading environment, this is my code with all my trials, but in all cases I have many copies af same instance<br><br>import xmlrpclib<br>import math <br>
import time<br>import pythoncom<br>import win32api<br>import win32com.client<br>import sys<br><br>from threading import Thread<br>#from mechanize import Browser<br>from win32com.client import DispatchEx<br><br><br>class TestCarle(Thread):<br>
&nbsp;&nbsp;&nbsp; def __init__ (self, site, num):<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Thread.__init__(self)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #<a href="http://self.br">self.br</a> = Browser()<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.site = site<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.tiempoFiesta = 0<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.nombre = &quot;&quot;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.i = 0<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.num = num<br><br>&nbsp;&nbsp;&nbsp; def run(self):<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; server = xmlrpclib.Server(&#39;<a href="http://localhost:9001">http://localhost:9001</a>&#39;)<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.nombre = server.get_name()<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.tiempoFiesta = server.get_time()<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tiempo = self.tiempoFiesta - time.time()<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #print tiempo<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; tiempo = tiempo / 1000<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #print tiempo<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; print self.nombre&nbsp;&nbsp;&nbsp; <br>
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; time.sleep(tiempo)<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sys.coinit_flags = 0<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #pythoncom.CoInitialize()<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #pythoncom.CoInitializeEx(pythoncom.COINIT_MULTITHREADED)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pythoncom.CoInitializeEx(pythoncom.COINIT_APARTMENTTHREADED)<br>
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #ie = pythoncom.CoCreateInstance(&quot;InternetExplorer.Application&quot;, None,\<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pythoncom.CLSCTX_SERVER, <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pythoncom.IID_IDispatch)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #<a href="http://self.ie">self.ie</a> = Dispatch(ie)<br>
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #a = win32api.ShellExecute(0,None,&quot;iexplore.exe&quot;,self.site,None,1)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #internetExplorerClassIdentity=&#39;{9BA05972-F6A8-11CF-A442-00A0C90A8F39}&#39;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #hwnds = Dispatch(internetExplorerClassIdentity)<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #<a href="http://self.ie">self.ie</a> = self.hwnds[self.num]<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #self.ie.Navigate(&quot;<a href="http://www.google.com/search?hl=en&amp;lr=&amp;q=python">http://www.google.com/search?hl=en&amp;lr=&amp;q=python</a>&quot;;)<br>
<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #<a href="http://self.ie">self.ie</a> = Dispatch(&quot;InternetExplorer.Application&quot;)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <a href="http://self.ie">self.ie</a> = DispatchEx(&quot;InternetExplorer.Application&quot;)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.ie.Visible = 1<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.ie.Navigate(self.site)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; while self.ie.Busy:<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; time.sleep(6)<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #self.ie.document.getElementById(&quot;login&quot;).value = &quot;37324&quot;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.ie.Document.getElementById(&quot;login&quot;).value = self.nombre<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.ie.Document.getElementById(&quot;B1&quot;).click()<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; while self.ie.Busy:<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; time.sleep(4)<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #print self.ie.document.frames.length<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; #print dir(self.ie.Document.frames)<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.ie.Document.frames[0].Document.getElementById(&quot;Submit&quot;).click()&nbsp;&nbsp;&nbsp; <br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; letras = [&#39;A&#39;,&#39;B&#39;,&#39;C&#39;,&#39;D&#39;]<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for self.i in range(50):<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; print &quot;%s, %s&quot; % (self.nombre, self.i)<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; while self.ie.Busy:<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; print &quot;Esperando&quot;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; time.sleep(4)<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.ie.Document.frames[0].Document.getElementById(&quot;radiobutton&quot;).value=letras[self.i%4]<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.ie.Document.frames[0].Document.getElementById(&quot;radiobutton&quot;).Checked = True<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.ie.Document.frames[0].Document.getElementById(&quot;Submit&quot;).click()<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pythoncom.CoUninitialize()&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>
<br clear="all"><br>Greats in advance<br>-- <br>Eric Galicia Rosas<br>CETEE<br>ITAM<br><br>msn: <a href="mailto:eric_galicia@hotmail.com">eric_galicia@hotmail.com</a><br>tel:&nbsp;&nbsp;&nbsp;&nbsp;56284000 ext 6612<br>cel:&nbsp;&nbsp; 0445532228865