自动配置Google Hosts脚本
发布时间:2020-12-17 17:19:00 所属栏目:Python 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/usr/bin/env python# encoding=utf8from HTMLParser import HTMLParserimport osimport requestsimport shutil__author__ = 'sofn'urlpath = "http
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #!/usr/bin/env python # encoding=utf8 from HTMLParser import HTMLParser import os import requests import shutil __author__ = 'sofn' urlpath = "http://www.360kb.com/kb/2_150.html" hostsBack = "/etc/hosts_back" hosts = "/etc/hosts" class MyHTMLParser(HTMLParser): def __init__(self): HTMLParser.__init__(self) self.hosts = [] self.got = False self.start = False self.onehost = {} self.first = False def handle_startendtag(self,tag,attrs): if tag == "br" and len(attrs) == 0: self.got = True self.first = True def handle_data(self,data): data = data.strip() if self.got and self.start and data: if self.first: self.onehost["ip"] = data self.first = False else: self.onehost["host"] = data self.hosts.append(self.onehost) self.onehost = {} if not self.start and data.startswith("#google hosts"): self.start = True if self.start and data == "#google hosts 2015 end": self.start = False if __name__ == "__main__": text = requests.get(urlpath).text hp = MyHTMLParser() hp.feed(text) hp.close() datas = hp.hosts if not os.path.exists(hostsBack): print("backup hosts") shutil.copy(hosts,hostsBack) else: if os.path.exists(hosts): os.remove(hosts) hostsFile = open(hosts,"a") with open(hostsBack) as f: print("write base") hostsFile.write(f.read()) hostsFile.close() hostsFile = open(hosts,"a") for one in datas: ip = one.get("ip") host = one.get("host") if ip and host and len(ip.split(".")) == 4: print("append " + str(ip) + " " + str(host)) hostsFile.write(ip + " " + host + "n") hostsFile.close() 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |