文档章节

Python 自动更新hosts 文件 (更新)

toddler
 toddler
发布于 2015/01/18 18:48
字数 219
阅读 868
收藏 13
#!/usr/bin/env python
# coding: utf-8
# Author : toddlerya
# Date: Jan 18 2015
# Last edit: Feb 20 2015
import urllib2
import re
import sys
import os
import time

url = "http://www.360kb.com/kb/2_122.html"
req = urllib2.Request(url)
html = urllib2.urlopen(req).read()


head_span = html.find('#google hosts')
tail_span = html.find('#google hosts 2015 end')
raw_hosts = html[head_span:tail_span+22]
 
result, number = re.subn(r'<.*>', '', raw_hosts)
pure_hosts, number = re.subn(r'&nbsp;', ' ', result)

date = time.strftime('%Y-%m-%d',time.localtime(time.time()))

arch = """127.0.0.1   localhost
# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
 
%s 
""" % date


 
print "Update your hosts file start!"
f = file(r'C:\\Windows\\System32\\drivers\etc\\hosts' ,'w+')
new_host = [arch,pure_hosts]
f.writelines(new_host)
f.close()
print "Update success! The hosts date %s" % pure_hosts
while True:
        flag = raw_input("Enter q to exit: ")
        if flag == 'q':
                break


© 著作权归作者所有

toddler
粉丝 13
博文 33
码字总数 21659
作品 1
济南
QA/测试工程师
私信 提问
加载中

评论(4)

toddler
toddler 博主

引用来自“OsBelief”的评论

请问,你这是什么原理啊
网站排版改了,我的脚本失效了,我得改改了。
toddler
toddler 博主

引用来自“OsBelief”的评论

请问,你这是什么原理啊
刚刚去看看,网站貌似又恢复正常了。。
toddler
toddler 博主

引用来自“OsBelief”的评论

请问,你这是什么原理啊
就是个简单爬虫,抓取网页的内容,写入hosts,但是网站已经被和谐了。。。
OsBelief
OsBelief
请问,你这是什么原理啊
【技术学院】TensorFlow分布式实践

作者:个推数据建模工程师 陈玉琪 大数据时代,基于单机的建模很难满足企业不断增长的数据量级的需求,开发者需要使用分布式的开发方式,在集群上进行建模。而单机和分布式的开发代码有一定的...

个推大数据
01/15
0
0
【初学必备】Win10环境下Anaconda安装

Anaconda集合了python,Spyder,Jupyter notebook及conda-----包管理器与环境管理器(含常用的panda,numpy等),省去单独下载的繁琐步骤,方便使用。 注:如过已经下载过python,可点击pyt...

AnnaGe
2018/08/05
0
0
Docker实战(五)之端口映射与容器互联

除了网络访问外,Docker还提供了两个很方便的功能来满足服务访问的基本需求:一个是允许映射容器内应用的服务端口到本地宿主主机;另一个是互联机制实现多个容器间通过容器名来快速访问。 1.端...

youcongtech
2018/07/07
0
0
isort 4.3.18 发布,Python 的 import 排序

isort 4.3.18 发布了。isort 可自动对 Python 的 import 语句进行排序和分段,可将大量的 import 结构转成非常适合阅读的排版,提供了一个命令行工具、Python 库和 Kate 插件。 此版本更新内...

xplanet
05/04
318
0
Ansible 2.7 正式发布,引入更多新特性

Ansible 2.7 已发布,命名为“In the Light”。该版本包含许多新特性和改进,主要内容如下: Allow config to enable native jinja types (#32738) Extends module_defaults by adding a pre...

王练
2018/10/08
3K
4

没有更多内容

加载失败,请刷新页面

加载更多

webGL和three.js的关系

本文转载于:专业的前端网站➤webGL和three.js的关系 如今浏览器的功能越来越强大,而且这些功能可能通过JavaScript直接调用。你可以用HTML5标签轻松地添加音频和视频,而且可以在HTML5画布上...

前端老手
25分钟前
5
0
Spring如何实现AOP,请不要再说cglib了!

1. 从注解入手找到对应核心类 最近工作中我都是基于注解实现AOP功能,常用的开启AOP的注解是@EnableAspectJAutoProxy,我们就从它入手。 上面的动图的流程的步骤就是: @EnableAspectJAutoPr...

温安适
27分钟前
27
0
Mybatis之ParameterHandler

mybatis-3.4.6.release. ParementerHandler是个接口,如下List-1 List-1 public interface ParameterHandler { Object getParameterObject(); void setParameters(PreparedStateme......

克虏伯
42分钟前
6
0
Spark sql的批处理物理计划BatchScanExec

BatchScanExec是batch类的物理计划,对应的逻辑计划是DataSourceV2Relation,是Datasource。 它的入参是Scan类,Scan类有两个重要方法,一个获取分区列表信息;另一个方法获取读取器工厂。 ...

守望者之父
46分钟前
10
0
for循环与while循环

循环结构三要素 a. 初始值 b. 循环条件 c. 改变条件 for循环 声明格式 for(表达式1;表达式2;表达式3){ 循环体语句 } 表达式1:用来循环的变量初始值。(开始值) 表达式2:用来判断循环的条件。...

Lenat
51分钟前
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部