Python更新hosts

  Hosts是一个没有扩展名的系统文件,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。
  本文介绍一种通过Python3来获取和更新hosts文件的方法。只适用于Windows系统,Linux和Mac系统需要修改LOCAL_PATH的值和刷新DNS缓存调用的程序。
  感谢racaljk提供的Google Hosts文件

import urllib.request
import os
import shutil

HOSTS_URL = 'https://raw.githubusercontent.com/racaljk/hosts/master/hosts'

LOCAL_PATH = r'C:\Windows\System32\drivers\etc\hosts'


def main():
    '''Main Function'''
    # Download hosts file
    urllib.request.urlretrieve(HOSTS_URL, 'hosts')
    # Backup old hosts file
    if(os.path.exists(LOCAL_PATH + '.bak')):
        os.remove(LOCAL_PATH)
    else:
        shutil.copyfile(LOCAL_PATH, LOCAL_PATH + '.bak')
    # Move new file to system
    shutil.move('hosts', LOCAL_PATH)
    # Update dns cache
    os.system('ipconfig /flushdns')

if __name__ == '__main__':
    main()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值