0

但是我只得到在 HTML 上呈现的唯一 URL,而不是全部,因为有一个 Slider 例如 25/145,我想获取所有 URL,任何解决方案

var result = [];
var index = 0;
jQuery.ajax({
  async: false,
  type: 'POST',
  url: "https://www.usajobs.gov/Search/Results?a=TD03&p=1",
  headers: {
    'contentType': 'application/x-www-form-urlencoded; charset=UTF-8'
  },
  crossDomain: true,
  success: function(response) {
    var urls = $("#usajobs-search-results").find('a').each(function() {
      let url = $(this).attr('href');
      console.log(`https://www.usajobs.gov/${url}`);
    });
    for (var i = 0; i < urls.length; i++) {
      result[index] = urls[i].href;
      index++;
    }
  },
});
4

1 回答 1

0

1、你有权限刮吗?

如果是这样

看来你需要改变 X

https://www.usajobs.gov/Search/Results?a=TD03&p=X 

在成功中

从 1 到 404

并使用 setTimeout 再次调用以不锤击它们

 var urls = $("#usajobs-search-results a').map(function() {
   return this.href; }).get()
 })
于 2021-01-08T21:33:20.130 回答