【问题标题】:Insert var into url and follow in node js with cheerio/request将 var 插入 url 并在 node js 中使用cheerio/request
【发布时间】:2014-09-21 23:47:19
【问题描述】:

我正在尝试从原始 url 中获取一个变量,将其插入第二个 url,访问该 url,然后从中访问变量。我有两个问题:

问题1:'myurl'变量返回的值是

"http://api.trove.nla.gov.au/work/undefined?key=6k6oagt6ott4ohno&reclevel=full"

也就是说,它没有使用 'myid' 变量。

问题 2:当我想访问 DOM 时,如何遵循“myurl”网址?我是否对“myurl”提出另一个“请求”?

到目前为止,这是我的代码:

var request = require('request'),
    cheerio = require('cheerio');
request('http://api.trove.nla.gov.au/result?key=6k6oagt6ott4ohno&zone=book&l-advformat=Thesis&sortby=dateDesc&q=+date%3A[2000+TO+2014]&l-availability=y&l-australian=y&n=0&s=0', function(error, response, html) {
    if (!error && response.statusCode == 200) {
        var $ = cheerio.load(html, {
          xmlMode: true
        });

        var myid = ($('work').attr('id'))
        var myurl = "http://api.trove.nla.gov.au/work/" +(myid)+ "?key=6k6oagt6ott4ohno&reclevel=full"
        console.log(myurl)
    }
    });

【问题讨论】:

    标签: node.js request cheerio


    【解决方案1】:
    1. 您的选择器可能有误,您的意思是“#work”还是“.work”?

    2. 是的,您必须使用 request()myurl 发出另一个请求(因为您正在使用它)

    【讨论】:

      猜你喜欢
      • 2015-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-15
      • 2017-02-27
      • 1970-01-01
      相关资源
      最近更新 更多