title: Make your program USE a gui
body: <p>I'd like to write a program able to "use" other programs by taking control of the mouse/keyboard and being able to "see" what's on the screen.</p>
  
  <p>I used <a href="http://www.autoitscript.com/autoit3/" rel="nofollow noreferrer">AutoIt</a> to do something similar, but I had to cheat sometimes because the language is not that powerful, or maybe it's just that I suck and I'm not able to do that much with it :P </p>
  
  <p>So... I need to:</p>
  
  <ul>
  <li>Take screenshots, then I will compare them to make the program "understand", but it needs to "see"</li>
  <li>Use the mouse: move, click and release, it's simple, isn't it?</li>
  <li>Using the keyboard: pressing some keys, or key combinations, including special keys like <kbd>Alt</kbd>,<kbd>Ctrl</kbd> etc...</li>
  </ul>
  
  <p>How can I do that in python?<br/>
  Does it works in both linux and windows? (this could be really really cool, but it is not necessary)</p>