博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Twisted模块
阅读量:5927 次
发布时间:2019-06-19

本文共 899 字,大约阅读时间需要 2 分钟。

from twisted.web.client import getPage, deferfrom twisted.internet import reactordef callback(contents):    print(contents)url_list = ['http://www.bing.com', 'http://www.baidu.com', ]for url in url_list:    deferred = getPage(bytes(url, encoding='utf8'))    deferred.addCallback(callback)reactor.run()

事件执行只有开始没有结束,因此需要规定某个目标任务的完成来终止事件

from twisted.web.client import getPage, deferfrom twisted.internet import reactordef callback(contents):    print(contents)url_list = ['http://www.bing.com', 'http://www.baidu.com', ]_active = []for url in url_list:    d = getPage(bytes(url, encoding='utf8'))    d.addCallback(callback)    _active.append(d)def all_done(arg):    reactor.stop()xx = defer.DeferredList(_active)xx.addBoth(all_done)reactor.run()

将defer对象加入一个列表_active中以此来用defer方法DeferredList来监听该列表中的任务是否完成回调,在执行回调之后addBoth(表示无论错误还是成功都会执行该方法设置的函数)

 

转载于:https://www.cnblogs.com/c491873412/p/7834338.html

你可能感兴趣的文章
时隔两年 重新当码农
查看>>
远程控制利器TeamViewer使用教程(图)
查看>>
如何使用Git
查看>>
POJ-1195-Mobile phones(二维树状数组)
查看>>
POJ - 2187 Beauty Contest(最远点对)
查看>>
Jade —— 源于 Node.js 的 HTML 模板引擎
查看>>
Objective-C 学习记录6--dictionary
查看>>
redis面试题
查看>>
c#获取远程图片的方法
查看>>
c# 读写注册表
查看>>
Excel导入MS SQL SERVER 操作
查看>>
Spring Boot(一)
查看>>
ssh证书登录(实例详解)
查看>>
搬家到此,嘿嘿
查看>>
ios启动画面
查看>>
求偶的两种方法
查看>>
BFC是什么
查看>>
10.26
查看>>
POJ 2887 Big String
查看>>
2596 售货员的难题
查看>>