Python爬虫编程思想(27):Twisted框架基础

本文介绍了Twisted框架的基础,包括Reactor(反应堆)模式的概念,它是异步网络编程的一种设计模式。Twisted框架利用Reactor模式进行事件驱动,通过reactor.run()启动事件循环。接着,文章展示了如何在Twisted中编写简单的Hello World程序,通过callWhenRunning函数在reactor启动后执行回调函数。文中强调了回调函数在单线程的reactor模式中的重要性。
摘要由CSDN通过智能技术生成

目录

1.  Reactor(反应堆)模式

2.  HelloWorld,Twisted框架


1.  Reactor(反应堆)模式

        在学习Twisted框架之前,先来了解一下反应堆模式。异步编程模型之所以能监视所有的任务的完成和阻塞情况,是因为通过循环用非阻塞模式执行完了所有的任务。例如,对于使用Socket访问多个服务器的任务。如果使用同步编程模型,会一个任务一个任务地顺序执行,而使用异步编程模型,执行的所有Socket方法都处于非阻塞的(使用setblocking(0)设置),也就是说,使用异步编程模型需要在循环中执行所有的非阻塞Socket任务,并利用select模块中的select方法监视所有的Socket是否有数据需要接收。

        这种利用循环体来等待事件发生,然后处理发生的事件的模型被设计成了一个模式: Reactor(反应堆)模式。Twisted就是使用了Reactor模式的异步网络框架。Reactor模式图形化表示如图1所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值