Oct1a

Python筛选出浏览器书签大量不可用网站

浏览器存了很多书签,有时候打开某个网站发现都已经失效了,
没删又很烦,但一大堆手动一个个点过去测试是不可能的,
刚好利用所学Python来实现筛选(目前就简单输出不可用,没搞自动删除)

实现思路

  • 导出书签
  • 打开文件
  • 截取文件中的网址
  • 测试网站是否可用
  • 输出不可用(删除不可用)
import re
import time
import ssl
import urllib.request
ssl._create_default_https_context = ssl._create_unverified_context
opener = urllib.request.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
f = open('index.html','r',encoding='utf-8').read()
url = re.findall(r'(https?\://[a-zA-Z0-9\.\?/&\=\:]+)',f) #用正则表达式过滤URL
for i in url: #循环list
    tempUrl = i
    try:
        opener.open(tempUrl)
        # print(tempUrl+'没问题')
    except urllib.error.HTTPError:
        print(tempUrl+'>访问页面出错')
        time.sleep(2)
    except urllib.error.URLError:
        print(tempUrl+'>访问页面出错')
        time.sleep(2)
    time.sleep(0.1)

测试结果

本作品采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可。