プログラミングのスクレイピングについてです。
アプリブンのサイトから、アプリのURL、名前、会社名をスクレイピングしようとしていますが、以下のようなエラーコードがでてしまいます。
どうしたらいいでしょうか?よろしくお願いいたします。
Exception: https://app-liv.jp のリクエストに失敗しました(エラー: 404)。サーバー応答の一部:
<met...(応答の全文を見るには muteHttpExceptions オプションを使用してください)(行 35、ファイル「コード」)詳細表示しない//参照サイトhttp://www.initialsite.com/w01/14311
function scrapSample() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('シート1'); //
var getUrl = 'https://app-liv.jp/business/all/0002/popular/';
//UrlFetchApp.fetch() でトップページのURLへアクセス。getContentText() でトップページのテキストデータが取得
var content = UrlFetchApp.fetch(getUrl).getContentText('UTF-8');
//new RegExp で記事URLの正規表現をitemRegexp として作成します
//class=”applink”/正規表現/g のようにオプションにgを選択して、一致するものを全てをマッチさせるようにしています。
var itemRegexp = new RegExp(//g);
//content のうち、この条件にマッチした部分をitem に配列として格納
var item = content.match(itemRegexp);
var items = [];
//item に格納したURLはaタグやclass名がついたままなのでreplace() でURLの文字列だけにしたものをitemURL へ代入
for (var i = 0; i < item.length; i++) {
var itemURL = item[i]
.replace('<a href=','')
.replace(/"/g,'')
.replace(/class=c-app-card-block>/,'');
//items へpush() して二次元配列として格納します。
items.push([itemURL]);
}
var spanRegexp = new RegExp(/.*?<\/span>/);
var spans = [];
for (var j = 0; j < items.length; j++) {
//UrlFetchApp.fetch() で先ほどitems に格納した記事URLへアクセスし、取得したテキストデータをitemCont へ代入します。
var spanCont = UrlFetchApp.fetch(items[j],).getContentText('UTF-8');
var span = spanCont.match(spanRegexp)[0]
spans.push([span]);
}
//sheet.getRange() で範囲を指定し、setValues() 二次元配列に格納してある記事タイトルと記事URLを書き込みます。
sheet.getRange(2, 1, spans.length, 1).setValues(spans);
sheet.getRange(2, 2, spans.length, 1).setValues(items);
}