前三题都用的typescript实现
(一)从 多个网页爬取去内容然后进行解析
有10个网页,1.txt 到 10.txt
http://dy-public.oss-cn-shenzhen.aliyuncs.com/interviewTestData/1.txt
<abc> <de
f>data : 1992; name : agent 1 </def></abc>
0.格式有可能有区别
1.分别实现同步,异步的爬取方式
2.网页下载使用nodejs的http即可
3.使用正则表达式获取data后面的字段,将10个文件的data值全部获取,并相加
我的答案
api.ts
import superagent = require('superagent');
import cheerio = require('cheerio');
export const remote_get = function(url: string) {
const promise = new Promise<superagent.Response>(function (resolve, reject) {
superagent.get(url)
.end(function (err, res) {
if (!err) {
resolve(res);
} else {
console.log(err)
reject(err);
}
});
});
return promise;
}
async.ts
import superagent = require('superagent');
import cheerio = require('cheerio');
const remote_get =function(url: string) {
const promise = new Promise<superagent.Response>(function (resolve, reject) {
superagent.get(url)
.end(function (err, res) {
if (!err) {
resolve(res);
} else {
console.log(err)
reject(err);
}
});
});
return promise;
}
let result = 0;
let count = 11;
let sum=0;
/**
*
* @param nums
* @param hasEnd
*/
async function crawl(){