| |
| import sys, os |
|
|
| os.chdir('/www/server/panel/') |
| sys.path.insert(0, "class/") |
| import PluginLoader |
| import public |
| import time |
|
|
|
|
| def clear_hosts(): |
| """ |
| @name 清理hosts文件中的bt.cn记录 |
| @return: |
| """ |
| remove = 0 |
| try: |
| import requests |
| requests.packages.urllib3.disable_warnings(requests.packages.urllib3.exceptions.InsecureRequestWarning) |
|
|
| url = 'https://www.bt.cn/api/ip/info_json' |
| res = requests.post(url, verify=False, timeout=30) |
|
|
| if res.status_code == 404: |
| remove = 1 |
| elif res.status_code == 200 or res.status_code == 400: |
| res = res.json() |
| if res != "[]": |
| remove = 1 |
| except: |
| result = public.ExecShell("curl -sS --connect-timeout 3 -m 60 -k https://www.bt.cn/api/ip/info_json")[0] |
| if result != "[]": |
| remove = 1 |
|
|
| hosts_file = '/etc/hosts' |
| if remove == 1 and os.path.exists(hosts_file): |
| public.ExecShell('sed -i "/www.bt.cn/d" /etc/hosts') |
|
|
| def flush_cache(): |
| ''' |
| @name 更新缓存 |
| @author hwliang |
| @return void |
| ''' |
| try: |
| |
| res = PluginLoader.get_plugin_list(1) |
| spath = '{}/data/pay_type.json'.format(public.get_panel_path()) |
| public.downloadFile(public.get_url() + '/install/lib/pay_type.json', spath) |
| import plugin_deployment |
| plugin_deployment.plugin_deployment().GetCloudList(None) |
|
|
| |
| if 'ip' in res and res['ip']: |
| pass |
| else: |
| if isinstance(res, dict) and not 'msg' in res: res['msg'] = '连接服务器失败!' |
| except: |
| pass |
|
|
|
|
| def flush_php_order_cache(): |
| """ |
| 更新软件商店php顺序缓存 |
| @return: |
| """ |
| spath = '{}/data/php_order.json'.format(public.get_panel_path()) |
| public.downloadFile(public.get_url() + '/install/lib/php_order.json', spath) |
|
|
|
|
| def flush_msg_json(): |
| """ |
| @name 更新消息json |
| """ |
| try: |
| spath = '{}/data/msg.json'.format(public.get_panel_path()) |
| public.downloadFile(public.get_url() + '/linux/panel/msg/msg.json', spath) |
| except: |
| pass |
|
|
|
|
| if __name__ == '__main__': |
| tip_date_tie = '/tmp/.fluah_time' |
| if os.path.exists(tip_date_tie): |
| last_time = int(public.readFile(tip_date_tie)) |
| timeout = time.time() - last_time |
| if timeout < 600: |
| print("执行间隔过短,退出 - {}!".format(timeout)) |
| sys.exit() |
| clear_hosts() |
| flush_cache() |
| flush_php_order_cache() |
| flush_msg_json() |
|
|
| public.writeFile(tip_date_tie, str(int(time.time()))) |
|
|