歡迎加入QQ討論群258996829
麥子學(xué)院 頭像
蘋果6袋
6
麥子學(xué)院

Python中使用協(xié)程如何獲取域名?

發(fā)布時間:2017-09-19 23:27  回復(fù):0  查看:2751   最后回復(fù):2017-09-19 23:27  
本文和大家分享的主要是python 中使用協(xié)程獲取域名相關(guān)內(nèi)容,一起來看看吧,希望對大家 學(xué)習(xí)python有所幫助。
  在網(wǎng)絡(luò)里與服務(wù)器通訊時,需要找到服務(wù)器的IP 地址,但是人們輸入的經(jīng)常是域名地址,它們只是方便人類來記憶,但實際上還是需要 IP 地址的,這時就需要把域名轉(zhuǎn)換為 IP 地址,在這個例子里使用協(xié)程來獲取域名的 IP 地址,由于獲取過程中會阻塞,使用協(xié)程就可以解決這個問題。
  源碼如下:
   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()
  結(jié)果輸出如下:
  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 軟件開發(fā)

您還未登錄,請先登錄

熱門帖子

最新帖子

?