Python检测网站链接是否已存在


Posted in Python onApril 07, 2016

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。

Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。

像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议。

早就听说Python语言操作简单,果然名不虚传,短短几句,就实现了基本的功能。

要检测目标网站上是否存在指定的URL,其实过程很简单:

1、获得指定网站网页的HTML代码

2、在HTML代码中查找指定的URL

3、如果存在,OK;否则,Error

整个程序引用了两个lib库,urllib2和sgmllib。

urllib2库主要定义了一些访问URL(基本通过HTTP)的函数与类。

sgmllib库主要负责解析HTML代码。

import urllib
from sgmllib import SGMLParser
class URLLister(SGMLParser):
def reset(self):
SGMLParser.reset(self)
self.urls = []
def start_a(self,attrs):
href=[v for k,v in attrs if k=='href']
if href:
if (href[].count('http://网站URL')==):
self.urls.extend(href)
links = ['http://www.google.com/',
'http://www.baidu.com',
'http://www.sohu.net',
'http://www..com',
'http://www.cnblogs.com',
'http://www.qq.com',
'http://www.yahoo.com/',
'http://www.bing.com/',
'http://www..com',]
for eachlink in links:
f = urllib.urlopen(eachlink)
if f.code ==:
parser = URLLister()
parser.feed(f.read())
f.close()
if (len(parser.urls)>=):
print 'The link from '+eachlink+' is OK!'
else:
print 'The link from '+eachlink+' is ERROR!'

这其中几个主要函数:

1、urllib2.urlopen(url[, data][, timeout])//打开一个URL

2、SGMLParser.feed(data) //获得需要解析的HTML数据

3、SGMLParser.start_tag(attributes) //指定需要解析的HTML标签,在本程序中,我们调用了start_a,说明我们需要解析HTML代码中<a>标签。通过查找<a>标签中href属性的value,可以获得该网页上所有链接的信息,只要我们指定的URL存在,就OK了。

这其实是一个很小的脚本,但也让我激动不已。一来,我已经跨进了Python的世界,并用它解决了实际工作中的问题,二来,它的简单语法、缩进格式着实让我眼前一亮。今后,希望能够多多使用Python,解决实际工作中的种种问题,做到学以致用.

以上内容是针对Python检测网站链接是否已存在的相关介绍,希望对大家有所帮助!

Python 相关文章推荐
Python队列的定义与使用方法示例
Jun 24 Python
python实现的二叉树定义与遍历算法实例
Jun 30 Python
详解django2中关于时间处理策略
Mar 06 Python
用python打印1~20的整数实例讲解
Jul 01 Python
python通过robert、sobel、Laplace算子实现图像边缘提取详解
Aug 21 Python
python3 实现函数写文件路径的正确方法
Nov 27 Python
详解pandas中iloc, loc和ix的区别和联系
Mar 09 Python
Python3标准库之threading进程中管理并发操作方法
Mar 30 Python
520使用Python实现“我爱你”表白
May 20 Python
JAVA及PYTHON质数计算代码对比解析
Jun 10 Python
彻底解决Python包下载慢问题
Nov 15 Python
python学习之panda数据分析核心支持库
May 07 Python
python多进程共享变量
Apr 06 #Python
python socket多线程通讯实例分析(聊天室)
Apr 06 #Python
python文件的md5加密方法
Apr 06 #Python
python制作爬虫并将抓取结果保存到excel中
Apr 06 #Python
python基于隐马尔可夫模型实现中文拼音输入
Apr 01 #Python
Python使用BeautifulSoup库解析HTML基本使用教程
Mar 31 #Python
Python使用Mechanize模块编写爬虫的要点解析
Mar 31 #Python
You might like
thinkphp的URL路由规则与配置实例
2014/11/26 PHP
给WordPress的编辑后台添加提示框的代码实例分享
2015/12/25 PHP
Dom在ajax技术中的作用说明
2010/10/25 Javascript
jquery打开直接跳到网页最下面、最低端实现代码
2013/04/22 Javascript
javascript用函数实现对象的方法
2015/05/14 Javascript
推荐10 个很棒的 jQuery 特效代码
2015/10/04 Javascript
jQuery Chart图表制作组件Highcharts用法详解
2016/06/01 Javascript
javaScript如何跳出多重循环break、continue
2016/09/01 Javascript
JavaScript随机生成颜色的方法
2016/10/15 Javascript
在html中引入外部js文件,并调用带参函数的方法
2016/10/31 Javascript
深入理解Webpack 中路径的配置
2017/06/17 Javascript
JS实现导出Excel的五种方法详解【附源码下载】
2018/03/15 Javascript
javascript自定义右键菜单插件
2019/12/16 Javascript
理解Proxy及使用Proxy实现vue数据双向绑定操作
2020/07/18 Javascript
利用python获得时间的实例说明
2013/03/25 Python
python获取文件后缀名及批量更新目录下文件后缀名的方法
2014/11/11 Python
set在python里的含义和用法
2019/06/24 Python
python全栈知识点总结
2019/07/01 Python
pandas基于时间序列的固定时间间隔求均值的方法
2019/07/04 Python
Django框架之登录后自定义跳转页面的实现方法
2019/07/18 Python
Python学习笔记之集合的概念和简单使用示例
2019/08/22 Python
Python如何基于selenium实现自动登录博客园
2019/12/16 Python
可视化pytorch 模型中不同BN层的running mean曲线实例
2020/06/24 Python
Python pip使用超时问题解决方案
2020/08/03 Python
韩国著名的在线综合购物网站:Akmall
2016/08/07 全球购物
洛杉矶时尚女装系列:J.ING US
2019/03/17 全球购物
商务英语专业毕业生自荐信
2013/11/05 职场文书
宗教学大学生职业生涯规划范文
2014/02/08 职场文书
学校关爱留守儿童活动方案
2014/08/27 职场文书
私营公司诉讼代理委托书范本
2014/09/13 职场文书
公司授权委托书范本
2014/09/18 职场文书
乡镇机关党员民主评议表自我评价
2014/09/21 职场文书
党员个人剖析材料
2014/09/30 职场文书
2014大学班主任工作总结
2014/11/08 职场文书
房屋租房协议书范本
2014/12/04 职场文书
工程部文员岗位职责
2015/02/04 职场文书