用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧

news/2024/5/13 14:34:04/文章来源:https://blog.csdn.net/chen801090/article/details/100668297

最近打开好多以前收藏的网站,发现好多都已经失效了,好多以前想看还没来得及看的内容,也找不见了。。。

失效的书签们

我们日常浏览网站的时候,时不时会遇到些新奇的东西,于是我们就默默的点了个收藏或者加书签。然而当我们面对成百上千的书签和收藏夹的时候,总会头疼不已……

用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧
尤其是昨天还在更新的程序设计博客,今天就挂了永不更新。或者是昨天看的起劲的电影网站,今天直接404。失效页面这么多,每次我打开才知道失效了,并且需要手动删除,这能是一个程序员干的事情吗?

可是无论是Google浏览器还是国内浏览器,最多也就提供一个对于收藏夹的备份服务,那只能Python走起了。

用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧
Python支持的收藏夹文件格式

对于收藏夹提供的支持很少,主要还是因为收藏夹藏在浏览器里面,我们只能手动导出htm文件进行管理

用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧
用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧
用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧
用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧
内容比较简单,对前端没什么了解的我,也可以很明显看出其中的树形结构和内在逻辑。

固定格式 网址 固定格式 页面名 固定格式

很简单的想到了正则匹配,其中有两个子串。提取出来再挨个访问,看看哪个失效了,就删除,就能获得清理后的收藏夹了。

读取收藏夹文件

path = "C:\\Users\\XU\\Desktop"
fname = "bookmarks.html"
os.chdir(path)
bookmarks_f = open(fname, "r+" ,encoding='UTF-8')
booklists = bookmarks_f.readlines()
bookmarks_f.close()

因为对于前端的不熟悉,这个导出的收藏夹可以抽象的分成

  • 结构代码
  • 保存网页书签的关键代码

其中结构代码我们不能动,要原封不动的保留,而保存网页书签的关键代码,我们要提取内容并且进行判断保留和删除。

所以这里采用readlines函数,每行读取,单独判断。

正则匹配

pattern = r'HREF="(.*?)" .*?>(.*?)</A>'
while len(booklists)>0:bookmark = booklists.pop(0)detail = re.search(pattern, bookmark)

如果是关键代码:提取出的子串在 detail.group(1) 和 detail.group(2) 里面

而如果是结构代码:detail == None

访问页面

import requests
r = requests.get(detail.group(1),timeout=500)

编代码尝试之后发现会有这四种情况

r.status_code == requests.codes.ok
r.status_code==404
r.status_code!=404 && 无法访问 (可能是屏蔽爬虫,建议保留)
requests.exceptions.ConnectionError

类似知乎、简书基本都反爬了,所以简单的get还不能有效访问,细节不值得大费周章,直接保留就好。而error,直接用try抛出异常就好,不然程序会停止运行。

添加逻辑后:(代码可左右拖动)

while len(booklists)>0:bookmark = booklists.pop(0)detail = re.search(pattern, bookmark)if detail:#print(detail.group(1) +"----"+ detail.group(2))try:#访问r = requests.get(detail.group(1),timeout=500)#如果可则添加if r.status_code == requests.codes.ok:new_lists.append(bookmark)print( "ok------ 保留:"+ detail.group(1)+" "+ detail.group(2))else:if(r.status_code==404):print("不可访问 删除:"+ detail.group(1)+" "+ detail.group(2) +'错误码 '+str(r.status_code))else:print("其他原因 保留:"+ detail.group(1)+" "+ detail.group(2) +'错误码 '+str(r.status_code))new_lists.append(bookmark)except:print( "不可访问 删除:"+ detail.group(1)+" "+ detail.group(2))#new_lists.append(bookmark)else:#没匹配到是结构语句new_lists.append(bookmark)

程序执行情况

用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧
导出htm

bookmarks_f = open('new_'+fname, "w+" ,encoding='UTF-8')
bookmarks_f.writelines(new_lists)
bookmarks_f.close()

导入浏览器

用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧
实际应用于我的浏览器

用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧
赶紧测试一下,你的哪些收藏网页是失效的,用Python清理,了解一下?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_747915.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SEO删除网站的旧内容,对目前已有的排名有影响吗?

搜索引擎是一个动态变化的过程&#xff0c;而相对于网站而言&#xff0c;对于过往的内容&#xff0c;它都是一沉不变的&#xff0c;这就是为什么网站需要持续的推陈出新&#xff0c;才能使得整站排名保持长期的稳定。 但这里有一个问题&#xff0c;垂直行业的内容资源库是有限…

大型网站系统架构分析

千万级的注册用户&#xff0c;千万级的帖子&#xff0c;nTB级的附件&#xff0c;还有巨大的日访问量&#xff0c;大型网站采用什么系统架构保证性能和稳定性&#xff1f; 首先讨论一下大型网站需要注意和考虑的问题。 数据库海量数据处理&#xff1a;负载量不大的情况下select、…

用Python爬取各大网站招聘平台,终于让我给知道对口的工作

个人经历&#xff1a;低不成&#xff0c;高不就 依稀还记得15年刚出来工作那会&#xff0c;在第一个互联网公司实习&#xff0c;在公司听惯了身边人说公司这不好&#xff0c;那不好&#xff0c;作为新人的我深受影响&#xff0c;不知从何时开始就想快点结束实习期换一份更好的…

用Python爬取各大网站招聘平台,终于让我给知道对口的工作

个人经历&#xff1a;低不成&#xff0c;高不就 依稀还记得15年刚出来工作那会&#xff0c;在第一个互联网公司实习&#xff0c;在公司听惯了身边人说公司这不好&#xff0c;那不好&#xff0c;作为新人的我深受影响&#xff0c;不知从何时开始就想快点结束实习期换一份更好的…

用Python清理收藏夹里已失效的网站

失效的书签们 我们日常浏览网站的时候&#xff0c;时不时会遇到些新奇的东西&#xff08; 你懂的.jpg &#xff09;&#xff0c;于是我们就默默的点了个收藏或者加书签。然而当我们面对成百上千的书签和收藏夹的时候&#xff0c;总会头疼不已…… 尤其是昨天还在更新的程序设计…

织梦怎么样备份网站

很多用织梦的朋友不知道怎么备份网站&#xff0c;还有些朋友备份网站的方式不对。当遇到网站被黑、服务器到期等关键时刻&#xff0c;导致数据丢失&#xff0c;网站不能用。新搭建网站就得一切从头再来&#xff0c;找技术恢复&#xff0c;又是一笔不小的开支。这是一种无形的损…

网市场云建站 v4.9 更新,增加网站子账户

开发四年只会写业务代码&#xff0c;分布式高并发都不会还做程序员&#xff1f; 网市场云建站系统&#xff0c;结合云技术&#xff0c;一台2核4G服务器可以建立超过4万个网站&#xff01;打破传统建站的高成本&#xff0c;让价格不再是阻碍的门槛&#xff0c;让每个人都能有自…

Python_爬虫_爬取好大夫网站_数据清洗部分

1.前言 通过对好大夫网站内容的爬取&#xff0c;我们已经收集到好大夫的相关数据&#xff0c;并将其存入excel表中。之所以先存入excel表中&#xff0c;是因为有很多是非结构化数据&#xff0c;需要进行数据清理后在进行保存&#xff0c;excel中有很多的功能能够帮助进行数据清…

使用Apache服务部署静态网站。

1、安装Apache服务程序&#xff0c;命令后面的Apache服务的软件包名称为httpd。2、httpd服务程序并将其加入到开机启动项中3、在浏览器&#xff08;这里以Firefox浏览器为例&#xff09;的地址栏中输入http://127.0.0.1并按回车键&#xff0c;就可以看到用于提供Web服务的httpd…

php特级课---1、网站大访问量如何解决

php特级课---1、网站大访问量如何解决 一、总结 一句话总结&#xff1a; 负载均衡和冗余技术 1、负载均衡和冗余技术是一回事么&#xff1f; 并不是&#xff1a;负载均衡是用户分流&#xff1b;冗余技术是避免出现单点故障 负载均衡&#xff1a;将不同的用户分流到不同的服务器…

python实战教程:7万网站用户行为大数据的分析

今天的教程有点长&#xff0c;耐心点看完&#xff0c;你会有收获的。基础薄弱的伙伴&#xff0c;不清楚的可以留言&#xff0c;要视频学习教程的&#xff0c;可以留言&#xff01; 7万网站用户行为大数据分析 数据分析师&#xff0c;是通过数据对业务团队决策、公司管理层的决…

手把手教你做毕业设计:基于JSP+MySQL的简单校园新闻网站(1)

系列教程来了&#xff01;毕业设计头大的伙伴&#xff0c;看过来了&#xff01;基础薄弱的伙伴&#xff0c;需要视频教程的&#xff0c;可以留言&#xff0c;我整理后发大家&#xff01; 整体流程 做一个项目&#xff0c;首先是需求分析&#xff0c;将要做的东西说明白。 然后…

手把手教你做毕设计系列:基于JSP+MySQL的简单校园新闻网站(3)

系列教程&#xff08;2&#xff09;下一期出&#xff0c;保存的文件一下子打不开了&#xff0c;下期更新哈&#xff01; 新建数据库 使用Navicat新建数据库shcoolnews。 为了保存管理员用户名、密码&#xff0c;新建user表&#xff0c;结构如下图。 简单解释下&#xff0c;i…

jquery找到第几个字符_10个可以找到jQuery承包商的网站

jquery找到第几个字符作为一名技能娴熟的前端Web开发人员&#xff0c;您可以选择以自由职业者&#xff0c;承包商或临时或永久任职的身份独立从事工作 。 或者&#xff0c;您可能只想在业余时间通过在线寻求一些项目工作来提高自己的技能。 因此&#xff0c;今天我列出了一些地…

10个可以找到jQuery承包商的网站

作为一名技能娴熟的前端Web开发人员&#xff0c;您可以选择以自由职业者&#xff0c;承包商或临时或永久任职的身份独立从事工作 。 或者&#xff0c;您可能只想在业余时间通过在线寻求一些项目工作来提高自己的技能。 因此&#xff0c;今天我列出了一些您可能会找到以jQuery /…

portfolio r语言_jQuery Mobile Portfolio网站模板

portfolio r语言我已经为jQuery4u博客读者免费开发了用于个人投资组合网站的基本jQuery Mobile模板 &#xff01; :)使用此模板的初始版本&#xff0c;功能特定于投资组合&#xff0c;您可以使用个人简历&#xff0c;投资组合图片库和联系表创建基本的移动投资组合网站。 这只是…

Python爬虫:爬取需要登录的网站

不少伙伴学爬虫&#xff0c;这就出一期Python爬虫教程&#xff0c;文末总结的有视频教程&#xff0c;自己按需学习哈&#xff01; 爬虫在采集网站的过程中&#xff0c;部分数据价值较高的网站&#xff0c;会限制访客的访问行为。这种时候建议通过登录的方式&#xff0c;获取目…

创意网站精选

2019独角兽企业重金招聘Python工程师标准>>> https://gomockingbird.com/ framework my life to a professioner http://doubanmash.com/ doubanmash http://alphatown.com/ 阿尔法城,模拟网上商品城&#xff0c;做的确实不错。 http://c2.com/cgi/wiki?DesignP…

政府与金融行业网站为何必须安装SSL证书?

在了解SSL证书对于政府与金融行业网站的重要性之前&#xff0c;我们先来了解一下SSL证书是什么&#xff1f;根据百度百科上的解释&#xff0c;SSL证书是数字证书的一种&#xff0c;类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上&#xff0c;也称为SSL服务器证书…

【网站工具】PHPNow,PHPMyadmin,Apache,IIS,MySQL

近期在学习网站建站的一些基本知识&#xff0c;遇到几个工具 PHPNow&#xff0c;改名为servkit http://servkit.org/ 优点&#xff1a;适合新手快速入门&#xff0c;绿色版&#xff0c;免费 缺点&#xff1a; 1、只有中文版&#xff0c;英文操作系统就乱码啦 2、Apache可…