用Python写的简单脚本更新本地hosts

这两天Google墙得严重,于是就产生了做个一键更新hosts的脚本的想法。

由于正在学习Python,理所当然用Python来写这个脚本了。

接触比较多的就是urllib2这个库,习惯性的import进去了。还要import一个re的库,让Python支持正则表达式。关于正则表达式我研究不多,只会点简单的,如果想了解下正则表达式可以上这个网站http://deerchao.net/tutorials/regex/regex.htm。

Python比较简洁,这里就用到了个写入文件的语法。下面贴上代码。

# coding:utf-8
import re
import urllib2
r=urllib2.urlopen(‘http://googless.sinaapp.com‘).read()
link_list = re.findall(‘1\d+.\d+.\d+.\d+‘ ,r)
newlist = []
def unique(oldlist):
	for x in oldlist:
		if x not in newlist:
			newlist.append(x)
	return newlist
unique(link_list)
f = open(‘/private/etc/hosts‘,‘w‘)
for each_link in newlist:
	f.write(each_link+‘    ‘+‘www.google.com‘+‘\n‘)
f.close()

  后来我看到有个朋友在他的博客上一直在更新好用的hosts,索性不用正则表达式,一股脑把他的那个网页给爬下来了,嘿嘿

import urllib2
content = urllib2.urlopen(‘http://www.findspace.name/adds/hosts‘).read()
f = open(‘/private/etc/hosts‘,‘w‘)
f.write(content)
f.close()

  是不是超级简单,哈哈~

时间: 2024-11-07 22:49:40

用Python写的简单脚本更新本地hosts的相关文章

python写个简单的文件上传是有多难,要么那么复杂,要么各种,,,老子来写个简单的

def upload(url,params): ''' 上传文件到服务器,不适合大文件 @params url 你懂的 @params {"action":"xxx","@file","file_path"} 普通参数 key:value 文件key头部加@ ''' import os import urllib2 BOUNDARY = "0450de9528f040078csuxianbaozic06"

python写的简单有效的爬虫代码

python写的简单有效的爬虫代码 by 伍雪颖 import re import urllib def getHtml(url): html = urllib.urlopen(url) scode = html.read() return scode def getImage(source): reg = r'src="(.*?\.jpg)"' imgre = re.compile(reg) images = re.findall(imgre,source) x = 0 for i

如何用python写一个简单的find命令

对一个运维来说可能会经常去查找目录下的一些文件是否存在,最常用的就是find命令,它不仅可以查找文件也可以查找目录,find命令用法 查找文件 [[email protected] opt]# find /usr/ -type f -name df /usr/bin/df 查找目录 [[email protected] opt]# find /usr/ -type d -name python /usr/share/gcc-4.8.2/python 现在就讲一些如何用python实现这个简单功能

使用python写自动执行脚本并将结果返回到html中

终于在今天完成了django项目开发的一个小项目,使用python写一个自动化上线的项目.使用到了python3.5,django 1.11.2,ansible,centos7. 功能描述如下: 1.使用网页点击要上线的项目 2.在后台系统执行过程中浏览器等待后台命令调用 3.在上线完成后将后台执行的结果回传到浏览器中. 步骤解说: 1.在django中要分清楚get和post的请求方式 2.使用subprocess.Popen调用时stdout时是byes类型需要使用str(stdout,en

python写的简单发送邮件的脚本【转】

近来有些东西需要监控报警发邮件,然后在网上找了点材料,自己写了一个简单发送邮件的脚本,主要就是运用python的smtplib模块,分享给大家看一下: #!/usr/bin/env python # -*- coding: utf-8 -*- #导入smtplib和MIMEText import smtplib,sys from email.mime.text import MIMEText def send_mail(sub,content): ############# #要发给谁,这里发给

python写个简单的记工作日记的脚本并打包为EXE

1 win10系统,代码: #!/usr/bin/python # -*- coding: UTF-8 -*- import time import tkinter as tk import tkinter.font as tf import webbrowser as web def save(): with open(di, mode='a', encoding='UTF-8') as fw: # 打开文件 txt = T1.get('1.0', 'end')#全选 if len(txt.s

Python写自动化之SVN更新

在远程机器上执行脚本时,为了能够保证脚本的实时性,我们一般会将脚本存放到SVN上,远程机器通过SVN的操作去更新脚本: SVN更新脚本只需要2步就可以实现了,这个地方使用到pysvn库,看下实现 # 初始化client self.client = pysvn.Client() self.client.set_default_username(self.username) self.client.set_default_password(util.decrypt_des(self.password

Python运维三十六式:用Python写一个简单的监控系统

市面上有很多开源的监控系统:Cacti.nagios.zabbix.感觉都不符合我的需求,为什么不自己做一个呢 用Python两个小时徒手撸了一个简易的监控系统,给大家分享一下,希望能对大家有所启发 首先数据库建表 建立一个数据库“falcon”,建表语句如下: 1 CREATE TABLE `stat` ( 2 `id` int(11) unsigned NOT NULL AUTO_INCREMENT, 3 `host` varchar(256) DEFAULT NULL, 4 `mem_fr

python写一个简单的接口

写一个接口: 1.用到的模块是flask,flask是一个python的一个web框架,可以用来开发接口和web页面 2. 启动服务的效果是这样的: 用postman测试的结果: