2015-10-19 21 views
1

我想知道是否可以在Google App腳本中解析字符串。如何在Google App腳本中將<HTML>解析爲字符串?

這裏是我的問題:

如果我輸入谷歌應用程序腳本編輯器下面的代碼:

function test() { 

    var response = UrlFetchApp.fetch("http://www.pudim.com.br/"); 
Logger.log(response.getContentText()); 

} 

我會在日誌中的一頁的HTML,你可以看到:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title></title> 
    <link rel="stylesheet" href="/SiteBuilder/css/Pessoal03Palha.css" type="text/css" /> 
    <meta name="Keywords" content="" /> 
    <meta name="Description" content="" /> 
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
</head> 
<body> 
    <div id="SiteBuilder_Principal"> 
     <div id="SiteBuilder_Topo" style="background-image: url('/SiteBuilder/UploadUsers/pudim.com.br/634607701572677834.png');"> 
      <div id="SiteBuilder_Topo_Objeto"> 

      </div> 
      <div id="SiteBuilder_Topo_Frente"></div> 
      <div id="SiteBuilder_Logo" style="top:54px; left:70px;;"> 
       <img src="/SiteBuilder/UploadUsers/pudim.com.br/634607755224560419.jpg" border="0" /> 
      </div> 
     </div> 
     <div id="SiteBuilder_Menu"> 
      <div id="SiteBuilder_Menu_Area"> 
       <style> 
     .dv_position{float:left; padding-right:12px; font-family: Arial; font-size: 10px; color: White; font-weight: bold;} 
    </style><div class="dv_position"><table><tr valign="top"><td><img src="/SiteBuilder/Templates/Pessoal03/Pessoal03Palha/imagens/tc_contrutor_template03_pessoal_palha_icon.gif"></img></td><td><a href="index.html"></a></td></tr></table></div> 
      </div> 
     </div> 
     <table id="SiteBuilder_TbConteudo" cellpadding="0" cellspacing="0" border="0"> 
      <tr> 
       <td align="left" valign="top"> 
        <div id="SiteBuilder_Conteudo"> 
         <div style="text-align: center;"><img alt="" src="/SiteBuilder/UploadUsers/pudim.com.br/pudim.jpg" style="border-width: 0px; border-style: solid;" /></div> 

        </div> 
       </td> 
      </tr> 
     </table> 
     <div id="SiteBuilder_Rodape"> 
      <div id="div_RodapeViewMode" class="div_RodapeViewMode"> 
       <a href="mailto:[email protected]">[email protected]</a> 

      </div> 
     </div> 
     <div id="SiteBuilder_HostedBY" style="float: right; color: #333333"> 
      Hosted by <a href="http://www.tecla.com.br/" target="_blank" style="font-weight:bold; color:#333333">Tecla</a> 
     </div> 
    </div> 
</body> 
</html> 

我以一個非常簡單的網站爲例。變量「response」將是一個字符串。我希望能夠從這個字符串中獲得我想要的任何值,例如想象或頁面標題的來源。

最終,我想使用Google SpreadSheet從一系列URL中獲取一些信息。我將在一列中的URL和其他列中,我想從電子商務中獲得一些產品的價值。

我意識到可能有一些更簡單的方法來實現這一點。我要求提供Google App Script解決方案,因爲這是我最熟悉的語言。但是,如果沒有可能的方法來完成使用Google App腳本的工作,我會很樂意聽到一些替代方案。

非常感謝!

回答

0

你想要正則表達式:w3schools.com/jsref/jsref_obj_regexp.asp,也可以用indexOf()完成,但它很難。

要獲取所有圖片src屬性:

var ind; 
while(ind = /<img src="([^"]*)/.exec(response.getContentText())){ 
    Logger.log(ind[1]) 
} 
相關問題