95637


[スクレイピング練習用サイト](https://scraping-for-
beginner.herokuapp.com/ranking/)で、スクレイピングの練習をしています。  
ライブラリにversion８の「Perser」プロジェクトのIDを入力して、準備を行い

以下のコードを書いて、セルA2にURLをはりつけて、その値を読み込ませてから、画像以外の情報を取得しようとしましたが、

[code]

    Exception: DNS error: http://URL
    myFunction  @ スクレピング検証.gs:6
    
[/code]

こちらのエラーがでて、読み取れませんでした。  
セルからURLをスクレイピングすることはそもそもできないのか？  
どこか書き方、メソッドの使い方に誤りがあるのか、教えていただけませんか？

[code]

    function Scraping() {
      var spreadsheet = SpreadsheetApp.getActive();
      var sheetURL  = spreadsheet.setActiveSheet(spreadsheet.getSheetByName('URL貼り付け'), true);
    
     const URL =  sheetURL.getRange('A2').getValue.activate;
      let response = UrlFetchApp.fetch("URL");
      let content = response.getContentText("utf-8");
      var text = Parser.data(content).from('<dd class="is_rank">').to('</span>').iterate();
    console.log(text)
    }
    
[/code]


CC BY-SA 4.0
2023-07-15T03:05:33.480
95628
2023-07-15T07:40:57.443
2023-07-15T07:40:57.443
3054
58928
question
javascript google-apps-script web-scraping google-spreadsheet
DNS error: http://URL というエラーが出ます


エラーメッセージを見てみましょう。

> `Exception: DNS error: http://URL`

この `URL` という文字列がどこから来たのか考える必要が有ります。

こういう場合は、エラーメッセージに含まれるエラーが出た場所（ファイル名、関数名、何行目か、など）からたどっていくのが方法の一つです。今回は環境が特殊（Apps
Script）ということもあり、質問からはエラーの箇所が特定できないので、ざっと見で該当していそうな箇所を指摘します。

[code]

    let response = UrlFetchApp.fetch("URL");
    
[/code]

ここで文字列の `"URL"` が渡されていますので、これが原因でしょう。おそらく質問者さんは、変数の `URL`
を渡そうと意図されたと思います。つまり、クォート（`"` と `"`）で囲まずに、ただ `URL` と書けばよいでしょう。


CC BY-SA 4.0
2023-07-15T07:36:02.233
95637
2023-07-15T07:36:02.233
3054
95628
answer