node.js正则表达式获取网页中所有链接的代码实例_node.js

实现代码

复制代码 代码如下:

var http = require('http');

//定义函数
var getAHref = function(htmlstr){
    var reg = /<a.+?href=('|")?([^'"]+)('|")?(?:\s+|>)/gim;
    var arr = [];
    while(tem=reg.exec(htmlstr)){
        arr.push(tem[2]);
    }
    return arr;
}

var qHref = "http://xxx";//设置被查询的目标网址
    var req = http.get(qHref, function(res) {
    var pageData = "";
    res.setEncoding('utf8');
    res.on('error', function (errget) {
           //出错处理
    });
    res.on('data', function (chunk) {
           pageData += chunk;
    });

    res.on('end', function(){
          //console.dir(pageData);
          var content = pageData;//获取到网页内容
          var hrefs=getAHref(content);//获取链接

    });

});

时间: 2024-12-25 10:27:04

node.js正则表达式获取网页中所有链接的代码实例_node.js的相关文章

JS正则表达式获取字符串中特定字符的方法

 这篇文章主要介绍了JS正则表达式获取字符串中得特定字符,通过replace的回调函数获取,需要的朋友可以参考下 实现的效果:在字符串中abcdefgname='test'sddfhskshjsfsjdfps中获取name的值test    实现的机制:通过replace的回调函数获取.    代码:  代码如下: var str = "abcdefgname='test'sddfhskshjsfsjdfps";  var reg = /name='((w|-|s)+)/ig;  st

Java中使用正则表达式获取网页中所有图片的路径_java

/** * 从HTML源码中提取图片路径,最后以一个 String 类型的 List 返回,如果不包含任何图片,则返回一个 size=0 的List * 需要注意的是,此方法只会提取以下格式的图片:.jpg|.bmp|.eps|.gif|.mif|.miff|.png|.tif|.tiff|.svg|.wmf|.jpe|.jpeg|.dib|.ico|.tga|.cut|.pic * @param htmlCode HTML源码 * @return <img>标签 src 属性指向的图片地址的

剖析Node.js异步编程中的回调与代码设计模式_node.js

NodeJS 最大的卖点--事件机制和异步 IO,对开发者并不是透明的.开发者需要按异步方式编写代码才用得上这个卖点,而这一点也遭到了一些 NodeJS 反对者的抨击.但不管怎样,异步编程确实是 NodeJS 最大的特点,没有掌握异步编程就不能说是真正学会了 NodeJS.本章将介绍与异步编程相关的各种知识. 在代码中,异步编程的直接体现就是回调.异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了.我们首先可以看看以下代码. function heavyCompute(n, callb

node.js中的Socket.IO使用实例_node.js

1. 简介 首先是Socket.IO的官方网站:http://socket.io 官网非常简洁,甚至没有API文档,只有一个简单的"How to use"可以参考.因为Socket.IO就跟官网一样简洁好用易上手. 那么Socket.IO到底是什么呢?Socket.IO是一个WebSocket库,包括了客户端的js和服务器端的nodejs,它的目标是构建可以在不同浏览器和移动设备上使用的实时应用.它会自动根据浏览器从WebSocket.AJAX长轮询.Iframe流等等各种方式中选择最

JS正则表达式获取字符串中特定字符的方法_正则表达式

实现的效果:在字符串中abcdefgname='test'sddfhskshjsfsjdfps中获取name的值test 实现的机制:通过replace的回调函数获取. 代码: 复制代码 代码如下: var str = "abcdefgname='test'sddfhskshjsfsjdfps"; var reg = /name='((\w|-|\s)+)/ig; str.replace(reg, function() { console.log(arguments.length);

正则表达式,提取网页中的链接地址

<td class=cate width="45%" style="word-break:break-all">       <a class=M href="http://jmfengcai.cn.alibaba.com/athena/companydetail/jmfengcai.html" onMouseDown="return aliclick(this,'?alishop=companylistcompany

正则表达式,提取网页中的链接地址_正则表达式

<td class=cate width="45%" style="word-break:break-all">       <a class=M href="http://jmfengcai.cn.alibaba.com/athena/companydetail/jmfengcai.html" onMouseDown="return aliclick(this,'?alishop=companylistcompany

Node.js中的process.nextTick使用实例_node.js

我已经不记得是在哪里第一次看到process.nextTick这个玩意的调用了,哦,应该是在nodejs官方的process文档里看到的.当时就不理解这东西是干嘛的了,都已经有setTimeout了,还需要这个函数干嘛.而且从根本上来说,这个函数又是干嘛的?和setTimeout有什么区别? stackoverflow上有一个非常好的帖子基本上解释了我的问题,这里我附上链接,然后给出它里面的范例: stackoverflow.com >> What are the proper use cas

Node.js中使用mongoskin操作mongoDB实例_node.js

一.废话 从13年1月份接触mongodb进行开发,开发了旅游标签服务.微博标签检索系统.地图服务.web APP服务...使用MongoDB的场景从.NET.JAVA环境转到了node.js平台.越发觉Node.js和mongodb结合感觉的很好.感觉mongodb和node.js是天生的一对.的确,mongodb的客户端是JS的解析引擎.因此,选择mongodb和node.js做产品原型也是很nice的选择.网上,遇到网友询问mongodb的开发,选择哪个driver最好,以前一直是使用原生