解决谷歌搜索技术文章时打不开网页问题的python脚本

yipeiwu_com6年前Python基础
注意:Win7或者WIn8用户要用管理员权限执行。

项目地址:http://code.google.com/p/my-hosts-file/downloads

复制代码 代码如下:

import urllib 
    import os 
    import shutil 

    hostspath = "C:\\Windows\\System32\\drivers\\etc" 
    savepath = hostspath + "\\hostsave" 

    def download_hosts(url = "http://my-hosts-file.googlecode.com/svn/trunk/hosts"): 
        os.chdir(hostspath) 
        if os.getcwd() != hostspath: 
            print("Switch Dir to System32 Error,check permission!\npwd:"+os.getcwd()) 
            exit()  
        try: 
            urllib.urlretrieve(url, "hostsave") 
        except: 
            print '\t Error when retrieveing hosts file from url: ', url 

    def backup_hosts(): 
        shutil.copy("hosts","hosts.bak") 

    def replace_hosts(): 
        shutil.copy("hostsave", "hosts") 
        print("Replace original hosts file finished, then flush dns...") 
        os.remove(savepath)     
        os.system("ipconfig /flushdns") 

    def main(): 
        download_hosts() 
        backup_hosts() 
        replace_hosts() 
    if __name__ == '__main__': 
        main()

相关文章

Python 分发包中添加额外文件的方法

在制作一个 Python 分发包时经常需要把一些文件添加到包中。最常见的例子是你希望通过  pip install 命令安装 Python 包时会在  /etc/ 等...

Python multiprocess pool模块报错pickling error问题解决方法分析

本文实例讲述了Python multiprocess pool模块报错pickling error问题解决方法。分享给大家供大家参考,具体如下: 问题 之前在调用class内的函数用mu...

为什么你还不懂得怎么使用Python协程

前言 从语法上来看,协程和生成器类似,都是定义体中包含yield关键字的函数。 yield在协程中的用法: 在协程中yield通常出现在表达式的右边,例如:datum = yiel...

Python实现MySQL操作的方法小结【安装,连接,增删改查等】

本文实例讲述了Python实现MySQL操作的方法。分享给大家供大家参考,具体如下: 1. 安装MySQLdb.从网站下载Mysql for python 的package 注意有32位...

python批量下载网站马拉松照片的完整步骤

python批量下载网站马拉松照片的完整步骤

前言 目前学习python几个月了,由于自己比较喜欢跑马拉松,已经跑过了很多场比赛,前些天就写了个简单的爬虫爬取了网上三千多场马拉松比赛的报名信息。 今年5月27日,我又参加了巴图鲁...