我正在制作一个webscraper,我已经知道如何废弃一些数据并使用我制作的代码将它们转换为Json:
var express = require('express');
var fs = require('fs');
var request = require('request');
var cheerio = require('cheerio');
var app = express();
var url = 'http://www.footmercato.net/';
request(url, function(err, resp, body) {
if (!err) {
var $ = cheerio.load(body);
var data = [];
var i = 1;
$('.text').each(function(i, element) {
var article = $('p');
var jsObject = { title : "", article : "", date : "" };
var articleTxt = article.text();
jsObject.article = articleTxt;
data.push(jsObject);
})
var json = JSON.stringify(data);
fs.writeFile('output.json', JSON.stringify(json, null, 4), function(err) {
console.log('File successfully written!');
})
}
});
app.listen('8080');
但我想浏览我正在抓取的网站,填写表格并转到其他页面。
有人知道我是否可以使用cheerio或我如何将其添加到现有代码?
由于
答案 0 :(得分:0)
您可以使用webdriverio实际上他将打开浏览器窗口,然后您可以通过webdriverio
api操纵dom来处理表单鼠标单击,并从一个页面导航到另一个页面。
var webdriverio = require('webdriverio');
var options = {
desiredCapabilities: {
browserName: 'firefox'
}
};
webdriverio
.remote(options)
.init()
.url('http://www.google.com')
.getTitle().then(function(title) {
console.log('Title was: ' + title);
})
.end();