16.01.2014 Views

Beginning Python - From Novice to Professional

Beginning Python - From Novice to Professional

Beginning Python - From Novice to Professional

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

■CONTENTS<br />

xv<br />

■CHAPTER 13 Database Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br />

The <strong>Python</strong> DB API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br />

Global Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286<br />

Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287<br />

Connections and Cursors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287<br />

Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289<br />

Downloading and Installing pysqlite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290<br />

Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291<br />

An Example Database Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291<br />

Creating and Populating Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292<br />

Searching and Dealing with Results. . . . . . . . . . . . . . . . . . . . . . . . . 294<br />

A Quick Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295<br />

New Functions in This Chapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295<br />

What Now? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295<br />

■CHAPTER 14 Network Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297<br />

A Handful of Networking Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297<br />

socket. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298<br />

urllib and urllib2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300<br />

Other Modules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301<br />

SocketServer and Friends . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302<br />

More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303<br />

Multiple Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303<br />

Forking and Threading with SocketServers. . . . . . . . . . . . . . . . . . . 305<br />

Asynchronous I/O with select and poll . . . . . . . . . . . . . . . . . . . . . . . 305<br />

Twisted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308<br />

Downloading and Installing Twisted. . . . . . . . . . . . . . . . . . . . . . . . . 308<br />

Writing a Twisted Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309<br />

A Quick Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311<br />

New Functions in This Chapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312<br />

What Now? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312<br />

■CHAPTER 15 <strong>Python</strong> and the Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313<br />

Screen Scraping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313<br />

Tidy and XHTML Parsing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314<br />

Beautiful Soup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!