1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
| import requests from bs4 import BeautifulSoup import time import os
if os.path.exists("refresh_log.txt"): os.remove("refresh_log.txt") if os.path.exists("no_keyword_pages_log.txt"): os.remove("no_keyword_pages_log.txt")
print("\033[34m***神棍局***天威DNS雷达系统\033[0m")
def check_keyword(content): keywords = ["正确"] for keyword in keywords: if keyword in content: return True return False
def write_log_to_file(total_checks, keyword_detected_count, keyword_not_detected_count, log_details): with open("refresh_log.txt", "w", encoding="utf-8") as log_file: log_file.write("====== 检测结果统计 ======\n") log_file.write(f"总共检测次数: {total_checks}\n") log_file.write(f"DNS正确的次数: {keyword_detected_count}\n") log_file.write(f"DNS异常的次数: {keyword_not_detected_count}\n") log_file.write("\n====== 详细日志 ======\n") for detail in log_details: log_file.write(detail + "\n")
def save_page_content(content, index): with open("no_keyword_pages_log.txt", "a", encoding="utf-8") as page_file: page_file.write(f"\n\n====== 第 {index+1} 次刷新DNS异常的嵌入页面内容 ======\n") page_file.write(content)
def main(refresh_count=99): url = "http://nstool.netease.com/" total_checks = 0 keyword_detected_count = 0 keyword_not_detected_count = 0 log_details = []
for i in range(refresh_count): try: total_checks += 1 print(f"第 {i+1} 次刷新:")
response = requests.get(url, headers={'User-Agent': 'Mozilla/5.0'}) response.encoding = 'gbk' soup = BeautifulSoup(response.text, 'html.parser')
iframe = soup.find('iframe') iframe_src = iframe['src']
iframe_response = requests.get(iframe_src, headers={'User-Agent': 'Mozilla/5.0'}) iframe_response.encoding = 'gbk' iframe_content = iframe_response.text
if check_keyword(iframe_content): keyword_detected_count += 1 print("DNS正确,继续查询...") log_details.append(f"第 {i+1} 次:DNS正确") else: keyword_not_detected_count += 1 print("DNS异常,继续查询...") log_details.append(f"第 {i+1} 次:DNS异常") save_page_content(iframe_content, i)
time.sleep(2)
except Exception as e: print("发生错误:", e) log_details.append(f"第 {i+1} 次:发生错误,{e}") break
print("\n====== 检测结果统计 ======") print(f"总共检测次数: {total_checks}") print(f"DNS正确的次数: {keyword_detected_count}") print(f"DNS异常的次数: {keyword_not_detected_count}") write_log_to_file(total_checks, keyword_detected_count, keyword_not_detected_count, log_details) print("日志已写入 refresh_log.txt 文件。")
if __name__ == '__main__': main()
|