python语言:通过对100个常用网站进行网络连接操作来判断当前的网络情况(是否被断掉)
由于需要判断网络的通信情况,比如判断网络是否掉线,因此想到了一个笨方法,那就是对100个大型网站进行网络连接操作,通过是否连接成功来判断当前的网络是否被断掉。
这里的思路是只要大部分的网站可以连接通那么当前的网络就是没有问题的,如果大部分的网络都连接不上那么就可以认为当前的网络是处于不好状态,甚至是掉线的,这时候就可以为下游业务提供信息,以便下游业务实现更换IP等操作。
host_list = [ "https://www.sohu.com/", "https://www.163.com/", "https://www.sina.com.cn/", "https://www.jd.com/", "https://www.taobao.com/", "https://www.58pic.com/", "https://www.ifeng.com/", "https://www.bilibili.com/", "https://haokan.baidu.com/", "https://wvw.4366.com/", "https://www.douban.com/", "https://www.qq.com/", "https://www.iqiyi.com/", "https://www.zhihu.com/", "https://ai.taobao.com/", "https://www.9377.com/", "https://www.eastmoney.com/", "https://live.baidu.com/", "http://tejia.hao123.com/", "https://music.163.com/", "https://wenku.baidu.com/", "https://wx.mail.qq.com/", "https://code.51.com/", "https://www.ximalaya.com/", "https://www.sogou.com/", # "https://www.youku.com/", "https://www.yy.com/", "https://www.ctrip.com/", "http://www.dangdang.com/", "https://www.1688.com/", "https://www.csdn.net/", "https://mail.126.com/", "https://mail.163.com/", "https://v.qq.com/", "https://www.mgtv.com/", "https://mail.sina.com.cn/", "https://sports.qq.com/", "https://pan.baidu.com/", "https://www.lagou.com/", "https://news.sina.com.cn/", "https://www.vivo.com.cn/", "http://www.mi.com/", "https://www.vmall.com/", "https://music.91q.com/", "https://y.qq.com/", "http://sports.qq.com/", "https://www.kugou.com/", "https://www.alipay.com/", "http://www.lianjia.com/", "https://qzone.qq.com/", "https://www.guancha.cn/", "https://www.zhipin.com/", "https://www.51job.com/", "http://renren.com/", "http://auto.ifeng.com/", "https://www.baihe.com/", "http://www.zhenai.com/", "https://www.dlut.edu.cn/", "http://eda.dlut.edu.cn/", "https://www.hupu.com/", "https://tieba.baidu.com/", "https://weibo.com/", "http://www.ppsport.com/", "https://www.docin.com/", "http://www.tuniu.com/", "http://www.yingjiesheng.com/", "https://book.qq.com/", "https://www.zol.com.cn/", "https://www.ithome.com/", "https://www.fliggy.com/", "https://www.xcar.com.cn/", "https://www.yicai.com/", "http://www.cwl.gov.cn/", "https://www.pcauto.com.cn/", "https://open.163.com/", "https://cn.bing.com/", "http://www.xxsy.net/", "https://www.jjwxc.net/", "https://www.sporttery.cn/", "http://www.lvmama.com/", "https://www.mafengwo.cn/", "http://focus.tianya.cn/", "https://wot.wggames.cn/", "https://www.amazon.com/", "http://www.mafengwo.cn/", "https://www.yiche.com/", "https://www.liepin.com/", "https://mail.10086.cn/", "https://www.qimao.com/", "https://fang.com/default.htm", "http://www.kuwo.cn/", "http://www.jrj.com.cn/", "http://www.spdb.com.cn/", "https://www.cib.com.cn/cn/index.html", "https://www.spdb.com.cn/", "https://outlook.live.com/", "https://www.foxmail.com/", "http://www.elong.com/", "https://www.csair.com/cn/", "http://www.ganji.com/", "http://www.bankcomm.com/", ] from multiprocessing import Process, freeze_support def main(): from collections import defaultdict host_dict = defaultdict(int) for host in host_list: host_dict[host] += 1 for host, host_count in host_dict.items(): if host_count != 1: print(host) print(len(host_list)) import requests for num in range(1000000000): # for id, host in enumerate(["https://www.iqiyi.com/", ]): for id, host in enumerate(host_list): print(id+2, host) try: resp = requests.get(host, timeout=10) except Exception as e: print(e) print(num) if __name__ == "__main__": main()
    本博客是博主个人学习时的一些记录,不保证是为原创,个别文章加入了转载的源地址,还有个别文章是汇总网上多份资料所成,在这之中也必有疏漏未加标注处,如有侵权请与博主联系。
如果未特殊标注则为原创,遵循 CC 4.0 BY-SA 版权协议。
posted on 2023-02-22 17:40 Angry_Panda 阅读(240) 评论(0) 收藏 举报
 
                    
                     
                    
                 
                    
                 
                
            
         
         
 浙公网安备 33010602011771号
浙公网安备 33010602011771号