欢迎加入QQ讨论群258996829
麦子学院 头像
苹果6袋
6
麦子学院

Python中使用协程如何获取域名?

发布时间:2017-09-19 23:27  回复:0  查看:2795   最后回复:2017-09-19 23:27  
本文和大家分享的主要是python 中使用协程获取域名相关内容,一起来看看吧,希望对大家 学习python有所帮助。
  在网络里与服务器通讯时,需要找到服务器的IP 地址,但是人们输入的经常是域名地址,它们只是方便人类来记忆,但实际上还是需要 IP 地址的,这时就需要把域名转换为 IP 地址,在这个例子里使用协程来获取域名的 IP 地址,由于获取过程中会阻塞,使用协程就可以解决这个问题。
  源码如下:
   import asyncio import logging import socket import sys
  TARGETS = [
  ('blog.csdn.net', 'https'),
  ('baidu.com', 'https'),
  ('python.org', 'https'),
  ]
   async  def  main(loop, targets):
   for target  in targets:
  info =  await loop.getaddrinfo(
  *target,
  proto=socket.IPPROTO_TCP,
  )
   for host  in info:
  print('{:20}: {}'.format(target[0], host[4][0]))
  event_loop = asyncio.get_event_loop() try:
  event_loop.run_until_complete(main(event_loop, TARGETS)) finally:
  event_loop.close()
  结果输出如下:
  blog.csdn.net       : 47.95.49.160
  baidu.com           : 220.181.57.217
  baidu.com           : 111.13.101.208
  baidu.com           : 123.125.114.144
  python.org          : 23.253.135.79
来源: 大坡3D 软件开发

您还未登录,请先登录

热门帖子

最新帖子