title: Why does Python (with twill) not want to log me in to a Yahoo mail box here?
body: <p>Can anyone, please, explain to me what's going on here. It seems that Python refuses to work (with twill) when I am trying to log in to my mailbox on Yahoo:</p>
  
  <pre><code>Python 2.5.4 (r254:67916, Dec 23 2008, 15:10:54) [MSC v.1310 32 bit (Intel)] on win32
  Type "copyright", "credits" or "license()" for more information.
  
      ****************************************************************
      Personal firewall software may warn about the connection IDLE
      makes to its subprocess using this computer's internal loopback
      interface.  This connection is not visible on any external
      interface and no data is sent to or received from the Internet.
      ****************************************************************
  
  IDLE 1.2.4      
  &gt;&gt;&gt; import twill
  &gt;&gt;&gt; twill.shell.main()
  
   -= Welcome to twill! =-
  
  current page:  *empty page* 
  &gt;&gt; go http://us.yahoo.com
  ==&gt; at http://us.yahoo.com
  current page: http://us.yahoo.com
  &gt;&gt; follow Mail
  ==&gt; at https://login.yahoo.com/config/login_verify2?.intl=us&amp;.src=ym
  current page: https://login.yahoo.com/config/login_verify2?.intl=us&amp;.src=ym
  &gt;&gt; showforms
  
  Form name=login_form (#1)
  ## ## __Name__________________ __Type___ __ID________ __Value__________________
  1     .tries                   hidden    (None)       1 
  2     .src                     hidden    (None)       ym 
  3     .md5                     hidden    (None)        
  4     .hash                    hidden    (None)        
  5     .js                      hidden    (None)        
  6     .last                    hidden    (None)        
  7     promo                    hidden    (None)        
  8     .intl                    hidden    (None)       us 
  9     .bypass                  hidden    (None)        
  10    .partner                 hidden    (None)        
  11    .u                       hidden    (None)       68gre5567rq16 
  12    .v                       hidden    (None)       0 
  13    .challenge               hidden    (None)       9wKUoOWDdP5Fho0kPfqPKEhPZBdK 
  14    .yplus                   hidden    (None)        
  15    .emailCode               hidden    (None)        
  16    pkg                      hidden    (None)        
  17    stepid                   hidden    (None)        
  18    .ev                      hidden    (None)        
  19    hasMsgr                  hidden    (None)       0 
  20    .chkP                    hidden    (None)       Y 
  21    .done                    hidden    (None)       http://mail.yahoo.com 
  22    .pd                      hidden    (None)       ym_ver=0&amp;c=&amp;ivt=&amp;sg= 
  23    pad                      hidden    pad          6 
  24    aad                      hidden    aad          6 
  25    login                    text      username      
  26    passwd                   password  passwd        
  27    .persistent              checkbox  persistent   [] of ['y'] 
  28 1  .save                    submi ... .save         
  
  current page: https://login.yahoo.com/config/login_verify2?.intl=us&amp;.src=ym
  &gt;&gt; fv 1 login *****************
  current page: https://login.yahoo.com/config/login_verify2?.intl=us&amp;.src=ym
  &gt;&gt; fv 1 passwd ***************
  current page: https://login.yahoo.com/config/login_verify2?.intl=us&amp;.src=ym
  &gt;&gt; submit
  Note: submit is using submit button: name=".save", value=""
  
  Following HTTP-EQUIV=REFRESH to http://us.mg5.mail.yahoo.com/dc/launch?.gx=1&amp;.rand=b3a02cc8lb0aa
  current page: http://us.mg5.mail.yahoo.com/dc/launch?.gx=1&amp;.rand=b3a02cc8lb0aa
  &gt;&gt; info
  
  Page information:
      URL: http://us.mg5.mail.yahoo.com/dc/launch?.gx=1&amp;.rand=b3a02cc8lb0aa
      HTTP code: 200
      Content type: text/html; charset=utf-8 (HTML)
      Page title: Yahoo! Mail
  
  Traceback (most recent call last):
    File "&lt;pyshell#1&gt;", line 1, in &lt;module&gt;
      twill.shell.main()
    File "C:\Python25\Lib\site-packages\twill\shell.py", line 383, in main
      shell.cmdloop(welcome_msg)
    File "C:\Python25\lib\cmd.py", line 142, in cmdloop
      stop = self.onecmd(line)
    File "C:\Python25\lib\cmd.py", line 219, in onecmd
      return func(arg)
    File "C:\Python25\Lib\site-packages\twill\shell.py", line 42, in do_cmd
      print '\nERROR: %s\n' % (str(e),)
    File "C:\Python25\lib\HTMLParser.py", line 59, in __str__
      result = self.msg
  AttributeError: 'ParseError' object has no attribute 'msg'
  &gt;&gt;&gt; 
  </code></pre>
  
  <hr>
  
  <p><strong>Update 1</strong>:</p>
  
  <p>(this update is my answer to Robus)</p>
  
  <p>Hello, Robus!!!</p>
  
  <p>First of all, I assume it was a typo when You wrote:</p>
  
  <hr>
  
  <blockquote>
    <p>Here's what I did: Went to
    C:\Python26\Lib\site-packages\twill-0.9-py2.6.egg\twill\other_packages\</p>
  </blockquote>
  
  <hr>
  
  <p>I think You meant this path: "<strong>C:\Python26\Lib\site-packages\twill\other_packages</strong>".  Otherwise, I can't see any such folder/directory there named "<strong>twill-0.9-py2.6.egg</strong>" - there is only a file with this name (the one that I think was downloaded during the installation of mechanize.) Please tell me if my assumption is wrong - I may well be not seeing something very obvious here as I am just a newbie.</p>
  
  <p>So, following Your instructions, I did this:</p>
  
  <ol>
  <li><p>I found "<strong>C:\Python25\Lib\site-packages\twill\other_packages_mechanize_dist</strong>" on my computer (as You can see, I don't have python26, but rather python 25 installed - that might also be a problem)</p></li>
  <li><p>Changed its name to "<strong>_mechanize_dist_backup</strong>" (the full path now being "<strong>C:\Python25\Lib\site-packages\twill\other_packages_mechanize_dist_backup</strong>")</p></li>
  <li><p>Copied my downloaded and unzipped "<strong>mechanize-0.2.2</strong>" into "<strong>C:\Python25\Lib\site-packages\twill\other_packages</strong>" (the full path being "<strong>C:\Python25\Lib\site-packages\twill\other_packages\mechanize-0.2.2</strong>")</p></li>
  <li><p>Changed its name to "<strong>_mechanize_dist</strong>" (the full path being "<strong>C:\Python25\Lib\site-packages\twill\other_packages_mechanize_dist</strong>")</p></li>
  <li><p>Copied "<strong>ClientForm</strong>" file from "<strong>_mechanize_dist_backup</strong>" and pasted it in "<strong>_mechanize_dist</strong>" (in fact, I found two files there named "<strong>ClientForm</strong>": one is a python file, another one is a compiled python file - I copied and pasted both of them).</p></li>
  </ol>
  
  <p>Having done that, I tried running all those commands and got stuck at the very beginning - I couldn't even import twill now:</p>
  
  <hr>
  
  <pre><code>IDLE 1.2.4      
  &gt;&gt;&gt; import twill
  
  Traceback (most recent call last):
    File "&lt;pyshell#0&gt;", line 1, in &lt;module&gt;
      import twill
    File "C:\Python25\Lib\site-packages\twill\__init__.py", line 52, in &lt;module&gt;
      from shell import TwillCommandLoop
    File "C:\Python25\Lib\site-packages\twill\shell.py", line 9, in &lt;module&gt;
      from twill import commands, parse, __version__
    File "C:\Python25\Lib\site-packages\twill\commands.py", line 7, in &lt;module&gt;
      import _mechanize_dist as mechanize
  ImportError: No module named _mechanize_dist
  </code></pre>
  
  <hr>
  
  <p>It seems that the system doesn't recognize the newly-created "<strong>_mechanize_dist</strong>". </p>
  
  <p>Could it be because I have Python 25 instead of Python 26? Or, perhaps, there is some other reason?    </p>