2012-02-10 12 views
0

私の会社は、電子メール、カレンダー、ドキュメントなどのためにGoogleに大きく依存しています。すべての部門は、部門情報を持つGoogleサイトを管理しています。私の部署のサイトを維持するという仕事。また、さまざまなイントラネットページに多くのリソースを設定しています。 GoogleのイントラネットページのコンテンツをGoogleサイトに追加したいと考えています。これを行うには2つの方法が考えられます。他のページからのコンテンツでGoogleサイトを更新する

理想的には、私はイントラネットページから取得したいテキストなので、イントラネット上のサイトからHTMLを読み込み、HTMLを解析して必要なテキストを抽出するGoogleアプリスクリプトを作成したいと思いますサイト上にあること。テストのために、私はちょうどこのように私のアプリでテキストとしてページのHTMLを表示しようとした:

function doGet(e) { 
    var app = UiApp.createApplication(); 

    var myUrl = "http://www.yahoo.com"; 
    var responseHtml = UrlFetchApp.fetch(myUrl); 
    var myLbl = app.createLabel(responseHtml.getContentText()); 

    var mypanel = app.createVerticalPanel(); 
    mypanel.add(myLbl); 
    app.add(mypanel); 

    return app; 
}//END doGet 

これは、公共のサイトで動作しますが、私は、イントラネットページからURLを使用して、それをしようとしたとき、私は「構文を受け取りますエラー:DNSエラー:... "私はGoogleがサイトをホストしており、私たちのイントラネットにアクセスすることはできませんが、私たちのネットワークの外部から私たちのGoogle製品にアクセスすることはできないと考えています。 UseIntranetパラメータを使用しようとしたサイトが1つ見つかりましたが、同じエラーが表示されます。

var responseHtml = UrlFetchApp.fetch(gemUrl, {useIntranet:true}); 

ここで何か問題がありますか?

1日に数回の更新が必要なので、イントラネットページからHTMLを取得して解析してから、自分のコンテンツを更新するPythonスクリプトをローカルで実行するだけでしたGoogleサイトイントラネットから必要なコンテンツを抽出するためのローカルスクリプトが既に用意されているので、ローカルのPythonスクリプトからGoogleサイトを更新する方法を見つける必要があります。 (これは、これを達成するための裏返しの方法だとわかっていますが、うまくいくとすれば、私の罰金)

ローカルスクリプトからGoogleサイトを更新する方法はありますか?

ご協力いただきありがとうございます。

編集: 私はこれをやろうとしているところを明確にする必要があります。私はGoogleサイトを使用しています。サイトを管理するために入ると、Google Appsスクリプトを追加するセクションがあります。だから私は自分のGoogleサイト用のGoogle Apps Scriptを作成しました。ここでは、イントラネットページのHTMLコンテンツを読むためのコードを書いています。それから私のサイトのページを編集して「挿入」を選択し、「Apps Script Gadget」を選択します。次に、自分のGoogleサイト用に作成したAppsスクリプトガジェットを選択し、ページに追加します。

+0

私はむしろあなたの質問で混乱しています。 [Google App Engine](http://code.google.com/appengine/)、[Google Sites](https://sites.google.com)、[Google Apps Script](http:// code.google.com/googleapps/appsscript/)?ファイアウォール内のデータにアクセスする場合は、[Google Secure Data Connector](http://code.google.com/securedataconnector/)を使用していますか? –

+0

Googleサイトを使用しています。サイトを管理するために入ると、Google Appsスクリプトを追加するセクションがあります。 GoogleのGoogleサイト向けGoogle Appsスクリプトを作成しました。私はGoogleのSecure Data Connectorを使用しようとしていません。 – user441603

+0

google-app-engineタグが削除されました。 – proppy

答えて

1

つのオプション:

  1. Googleはあなたが書いたスクリプトは、Googleのサーバーで実行されているアプリ。 Secure Data Connectorを使用すると、「ファイアウォールの背後にある」イントラネットベースのデータ(「useIntranet」パラメータが入っている場所)にスクリプトからアクセスできます。

  2. ローカルスクリプトを使用することもできます。このスクリプトはイントラネットのデータを読んで(あなたが言ったように)、それをGoogleサイトのページに書き出します。あなたはGoogle Sites Data APIを使用し、それにはpython libraryがあります。

+0

あなたは絶対に両方の権利を持っていました。 SDCを使用してGoogleサイトのイントラネットページへのアクセスを許可するルールを作成しました。 Python APIもうまくいきましたが、私は私の会社のドメインに対する完全な管理権限を持っている必要があります。 – user441603

関連する問題