#! /usr/bin/env python3
# -*- coding:utf- -*- from urllib import request
import gevent,time
from gevent import monkey monkey.patch_all() # 把当前程序中的所有io操作都做上标记 def spider(url):
print("GET:%s" % url)
resp = request.urlopen(url)
data = resp.read()
print("%s bytes received from %s.." % (len(data), url)) urls = [
"https://weibo.com/",
"https://www.baidu.com/",
"https://www.yinxiang.com/"
] start_time = time.time()
for url in urls:
spider(url)
print("同步耗时:",time.time() - start_time) async_time_start = time.time()
gevent.joinall([
gevent.spawn(spider,"https://weibo.com/"),
gevent.spawn(spider,"https://www.baidu.com/"),
gevent.spawn(spider,"https://www.yinxiang.com/"),
])
print("异步耗时:",time.time() - async_time_start)

输出

GET:https://weibo.com/
bytes received from https://weibo.com/..
GET:https://www.baidu.com/
bytes received from https://www.baidu.com/..
GET:https://www.yinxiang.com/
bytes received from https://www.yinxiang.com/..
同步耗时: 0.23460006713867188
GET:https://weibo.com/
GET:https://www.baidu.com/
GET:https://www.yinxiang.com/
bytes received from https://www.baidu.com/..
bytes received from https://www.yinxiang.com/..
bytes received from https://weibo.com/..
异步耗时: 0.0946660041809082

最新文章

  1. openstack-lanch an instance and nova compute log analysis
  2. 使用maven下载jar包的source和javadoc
  3. 玩转单元测试之DBUnit
  4. 在VS2010下配置OpenCV 2.3
  5. Express实现http和https服务
  6. Eclipse Plugin for Hadoop
  7. 节点的创建--对比jQuery与JavaScript 方法
  8. Backward_chaining
  9. eclipse报错:发现了以元素 'd:skin' 开头的无效内容。此处不应含有子元素
  10. xmlplus 组件设计系列之七 - 路由
  11. MySQL 完整和增量备份与恢复
  12. Django—模板渲染
  13. StackExchange.Redis 异步超时解决方案
  14. 2018-2019-2 20165231 王杨鸿永 Exp6 信息搜集与漏洞扫描
  15. Bootstrap-table 部分浏览器显示不出来
  16. # -*- coding: utf-8 -*-
  17. Centos 7创建一个服务
  18. [转]RPA简介
  19. 常用zookeeper命令
  20. JDK8 stream toMap() java.lang.IllegalStateException: Duplicate key异常解决(key重复)

热门文章

  1. [LeetCode] 694. Number of Distinct Islands
  2. toFixed()与toPrecision()
  3. Mysql闭包表之关于国家区域的一个实践
  4. 线段树(I tree)
  5. uva 13598
  6. Yahoo数据仓库架构简介
  7. Linux服务器---使用mysql
  8. 4 个技巧学习 Golang
  9. LWIP使用经验---变态级(转)
  10. xargs 原理&使用