Jav*_*ins 6 html javascript jquery web-crawler node.js
我正在研究用于删除网站的nodejs,我对nodejs很新.网站初始页面是一个弹出窗口,其中一个必须从selectbox中选择选项并提交,然后才能浏览以后的页面.这必须首先完成时间然后它将被存储为cookie供以后使用.
我能够获得弹出窗口的html页面但我无法从selectbox中选择选项并提交请求.
这是我的代码
var express = require('express');
var request=require('request');
var cheerio=require('cheerio');
var j = request.jar();
//var cookie = request.cookie();
j.setCookie("city_id=1; path=/; domain=.bigbasket.com", 'http://bigbasket.com/', function(error, cookie) {
//console.log("error"+error.message);
console.log("cookie "+cookie);
});
var app=express();
app.get('/', function(req, res){
console.log("hi");
var sessionVal = req.session;
request({uri:'http://bigbasket.com/',
headers:{'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36' ,
'content-type':'application/x-www-form-urlencoded; charset=UTF-8',
'connection':'keep-alive'},
jar:j},
function(err, response, body) {
// console.log("err "+err.message);
console.log("header"+JSON.stringify(response.headers));
console.log("status"+response.statusCode);
console.log("cookie "+response.cookie);
console.log(body);
var $=cheerio.load(body,{xmlMode: true});
console.log($);
var $selectBox= $('select').filter('.selectboxdiv');
console.log($selectBox.text());
response.end;
});
});
app.listen('8081')
console.log('Magic happens on port 8081');
exports = module.exports = app;
Run Code Online (Sandbox Code Playgroud)
我可以通过以下代码获得选择框选项:
var $selectBox= $('select').filter('.selectboxdiv');
console.log($selectBox.text());
Run Code Online (Sandbox Code Playgroud)
但我无法选择该选项并提交.我必须从下拉菜单中选择城市并提交请求,以便我可以从即将到来的网页中抓取数据.
| 归档时间: |
|
| 查看次数: |
2877 次 |
| 最近记录: |