我創建了一個腳本,使用request和cheerio庫,從一個網站上獲取不同的帖子標題和它們相應的鏈接。該腳本似乎做得很好。如果你看一下下面的腳本,你可以看到我使用了getposts((item,link) => console.log({item,link}));來呼叫這個函式。
現在,問題是:
我怎樣才能將startUrl(網站鏈接)作為一個引數,同時在呼叫函式時保持其余的邏輯不變?
var request = require('require') 。
var cheerio = require('cheerio') 。
const startUrl = 'https://stackoverflow.com/questions/tagged/web-scraping';
function getposts(callback){
request(startUrl, function(error, response, html) {
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html)。
$('.summary .question-hyperlink').each(function() {
var items = $(this).text() 。
var links = $(this).attr('href')。
return callback( items, links)。
});
}
});
}
getposts((item,link) => console. log({item,link}) )。
uj5u.com熱心網友回復:
。創建一個新的url引數并傳入startUrl:
var request = require('require'/span>)。
var cheerio = require('cheerio') 。
const startUrl = 'https://stackoverflow.com/questions/tagged/web-scraping';
function getposts(url, callback) {
request(url, function(error, response, html) {
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html)。
$('.summary .question-hyperlink').each(function() {
var items = $(this).text() 。
var links = $(this).attr('href')。
return callback( items, links)。
});
}
});
}
getposts(startUrl, (item,link) =>/span> console. log({item,link}) )。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/320254.html
標籤:
