方法一:
/**
* 检查从页面上提取出的url是不是一个正确的url // *
*
* @param parentURL
* @param link
* @return
*/
private boolean checkLink(URL parentURL, String link) {
boolean linkFlag = true;
link = link.toLowerCase();
if (link.length() < 5) {
linkFlag = false;
} else {
String newUrlStr = null;
try {
URL newUrl = new URL(parentURL, link);
newUrlStr = newUrl.toString();
if (newUrlStr.indexOf("+") > -1 || newUrlStr.length() < 10
|| newUrlStr.indexOf("\"") > -1
|| newUrlStr.indexOf("#") > -1
|| newUrlStr.indexOf("javascript") > -1
|| newUrlStr.indexOf("'") > -1
|| !newUrlStr.startsWith("http://")
|| newUrlStr.substring(6).indexOf("http://") > -1
|| newUrlStr.length() > 255
) {
return false;
}
} catch (MalformedURLException e) {
System.err.println(parentURL.toString() + "--->" + link);
linkFlag = false;
}
}
return linkFlag;
}
方法二:
/**
* 判断一个从页面上提取出的link,看是否符合爬取条件,若是符合,返回这个link
*
* @param parentURL
* @param link
* @return
*/
private String getNewLink(URL parentURL, String link) {
String newUrlStr = null;
String returnStr = null;
URL newUrl = null;
if (null != link && !"".equals(link.trim())) {
if (link.indexOf("\\") > -1) {
link = link.toLowerCase().replace("\\", "/");
}
if (link.indexOf("javascript") < 0 && link.indexOf("mailto:") < 0
&& link.indexOf("+") < 0) {
if (null != parentURL) {
try {
newUrl = new URL(parentURL, link);
if ("http".equals(newUrl.getProtocol())) {
if ("".equals(newUrl.getPath())) {
newUrlStr = newUrl.toString() + "/";
} else {
newUrlStr = newUrl.toString();
}
if (newUrlStr.indexOf("\"") < 0
&& newUrlStr.indexOf("'") < 0
&& newUrlStr.indexOf("<") < 0
&& newUrlStr.indexOf(">") < 0
&& newUrlStr.substring(6).indexOf("http://") < 0
&& newUrlStr.length() < 255
){
if (newUrlStr.indexOf("#") > 0) {
returnStr = newUrlStr.substring(0,
newUrlStr.indexOf("#"));
} else {
returnStr = newUrlStr;
}
} // if newUrlStr over
}// http over
} catch (MalformedURLException e) {
System.err.println("url error 。。。");
} // try
} // if null parentUrl over
}// if link over
}// if null link over
return returnStr;
}
分享到:
相关推荐
自动判断URL编码的方法。URL中包含编码的中文的时候,程序获取queryString需要根据url的不同编码,采用不同的解码方式,RequestQueryString方法能够自动识别url是用UTF-8编码还是GB2312编码,从而自动获取争取的值。...
在代理方法拦截Url,识别判断,从而完成iOS和JS的交互
方法二: 代码如下://判断当前系统是否支持Java AWT Desktop扩展 if(java.awt.Desktop.isDesktopSupported()){ try{ //创建一个URI实例,注意不是URL java.net.URI uri=java.net.URI.create(“//www.j
已有的会话识别方法不能有效地动态适应不同的用户(如多IP单用户、单IP多用户)行为,在Web日志分析的基础上,提出了一种基于引用启发式和URL语义相结合的会话识别方法。实验结果表明,改进后的会话识别方法能更有效...
昨天做了个监控远程服务器是否正常连接,费了很大脑动力,写成了下面的方法,现在分享给大家,希望可以帮助都更多的人。 写个方法的时候一直有个误区,不知道怎么去监控远程服务器,望遇到同样问题人,跳出这个思想...
百度站长URL提交工具可用于百度url批量提交,非常...百度站长URL提交工具操作方法: 将所有需要提交的网址链接放在TXT文本里面,导入到软件内,点开始提交 提示说明:部分杀软等报毒,添加信任或白名单即可,不喜勿下
下面小编就为大家带来一篇js判断请求的url是否可访问,支持跨域判断的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了Apache中使非伪静态url跳转到伪静态url的方法,主要是在使用.htaccess时的问题,需要的朋友可以参考下
#参数:URL地址,应用中文名称,唯一识别码(访问url后返回的特定字符串) #依赖脚本:数据库操作脚本dbExecurteSQL.sh #数据库操作脚本资源:https://download.csdn.net/upload/10975286 #作者:baocr #时间:2019-...
提出一种高效的基于段模式的检测恶意URL的方法,该...不仅如此,该方法还支持基于Jaccard的随机域名识别技术来判定包含随机域名的恶意URL。实验结果表明,与当前先进的基准方法相比,该方法具有较好的性能和可扩展性。
本文实例讲述了js判断登录与否并确定跳转页面的方法。分享给大家供大家参考。具体如下: 使用session存储,确定用户是否登录,从而确定页面跳转至哪个页面。 判断本地有无customerID: function jumpTo(p, url) { ...
本文实例讲述了php检测url是否存在的方法。分享给大家供大家参考。具体如下: 复制代码 代码如下:function url_exists($url) { $hdrs = @get_headers($url); return is_array($hdrs) ? preg_match(‘/^...
解决方案一: XMLHTTP方案 以下代码摘自[2]中meizz的回帖: 代码如下: [removed] function getURL(url) { var xmlhttp = new ActiveXObject( “Microsoft.XMLHTTP”); xmlhttp.open(“GET”, url, false); xml
URL Snooper是用来帮助用户定位音频和视频文件的URL。 URL Snooper的目标是为在所有网络数据流找到URL提供一站式的简单解决方法。它通过观看网络流量和识别潜在的网址,特别是流媒体的网址。
方法一:(仅适用于ie) 代码如下:function CheckStatus(url) { XMLHTTP = new ActiveXObject(“Microsoft.XMLHTTP”) XMLHTTP.open(“HEAD”,url,false) XMLHTTP.send() return XMLHTTP.status==200 } function...
这些功能涵盖了 URL 的各个方面,提供了整体视图,以帮助识别潜在威胁。 主要功能类型:基本 URL 组件、域名信息、含量分析、路径和查询参数、SSL证书详细信息、主机声誉、网络功能、机器学习派生的功能、行为特征。...
routing-filter 包裹了 Rails 路由系统的复杂野兽,在 Rails URL 识别和生成中提供了看不见的灵活性和强大功能 路由过滤器围绕着复杂的野兽,Rails 路由系统在 Rails URL 识别和生成中提供了看不见的灵活性和强大...
本文实例为大家分享了python3判断url链接是否为404的具体代码,供大家参考,具体内容如下 import pymysql import threading import time import urllib import requests # 打开数据库连接 db = pymysql.connect(...
检测WinCE车机能否使用CarPlay方法教程.url