Book Image

Python GUI Programming with Tkinter, 2nd edition - Second Edition

By : Alan D. Moore
4.5 (2)
Book Image

Python GUI Programming with Tkinter, 2nd edition - Second Edition

4.5 (2)
By: Alan D. Moore

Overview of this book

Tkinter is widely used to build GUIs in Python due to its simplicity. In this book, you’ll discover Tkinter’s strengths and overcome its challenges as you learn to develop fully featured GUI applications. Python GUI Programming with Tkinter, Second Edition, will not only provide you with a working knowledge of the Tkinter GUI library, but also a valuable set of skills that will enable you to plan, implement, and maintain larger applications. You’ll build a full-blown data entry application from scratch, learning how to grow and improve your code in response to continually changing user and business needs. You’ll develop a practical understanding of tools and techniques used to manage this evolving codebase and go beyond the default Tkinter widget capabilities. You’ll implement version control and unit testing, separation of concerns through the MVC design pattern, and object-oriented programming to organize your code more cleanly. You’ll also gain experience with technologies often used in workplace applications, such as SQL databases, network services, and data visualization libraries. Finally, you’ll package your application for wider distribution and tackle the challenge of maintaining cross-platform compatibility.
Table of Contents (22 chapters)
19
Other Books You May Enjoy
20
Index
Appendices

SFTP using paramiko

While custom-written RESTful web APIs may be common with large companies and third-party services, our programs are often called upon to exchange files or data with servers using standard communication protocols. In the Linux and Unix world, the secure shell or SSH protocol has long been the de-facto standard for communication between systems. Most implementations of SSH include SFTP (Secure File Transfer Protocol), an encrypted replacement for the archaic FTP service.

In addition to uploading the CSV extract to the corporate REST service, your manager has to upload a second copy to a remote server using SFTP. The user workflow needs to be the same, though there is a requirement to upload the file into a particular directory on the server. You need to implement this upload in your application just as you did for the REST service.

Setting up SSH services for testing

In order to test the SFTP features we're going to code in our application, we need...