這裏是我的情況:我的公司很大程度上依賴於Google的電子郵件,日曆,文檔等。每個部門都維護一個帶有部門信息的Google網站,最近我被遞交給維護我部門網站的任務。該公司還在各種內聯網頁面上建立了大量資源。我想在我的Google網站上包含來自我們Intranet頁面的一些內容,並且我可以考慮兩種可能的方式來執行此操作。用其他頁面的內容更新Google網站
理想情況下,因爲它只是我想從內聯網頁抓取的文本,所以我想編寫一個Google應用腳本來從我的Intranet上的站點讀取HTML並解析HTML以提取我想要的文本在網站上有。爲了測試,我只是想在我的應用程序來顯示網頁的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
這適用於公共場所,但是當我嘗試使用從Intranet網頁的URL,我收到一個「語法錯誤:DNS錯誤:...「。我假設谷歌正在託管該網站,但無法訪問我們的內部網,儘管您無法從我們的網絡外部訪問我們的任何Google產品,所以情況可能並非如此。我發現一個網站,說使用UseIntranet參數去嘗試,但我仍然得到同樣的錯誤:
var responseHtml = UrlFetchApp.fetch(gemUrl, {useIntranet:true});
我錯了在這裏做什麼?
我的第二個想法,因爲我只需要它每天更新幾次,就是編寫一個Python腳本在本地運行,它將從內部網頁獲取HTML並解析它,然後更新我的內容Google網站。我已經有本地腳本從Intranet中提取需要的內容,我只需要找到一種方法來從本地python腳本更新Google網站。 (我知道這是完成這個的後退方式,但是如果它工作,對我來說很好)
那麼有沒有辦法從本地腳本更新Google網站?
在此先感謝您的幫助!
編輯: 我應該澄清我在哪裏試圖做到這一點。我正在使用Google網站。當我管理我的網站時,有一個部分可以添加Google Apps腳本。所以我爲我的Google網站創建了一個Google Apps腳本,這就是我編寫代碼來嘗試閱讀Intranet頁面的HTML內容的地方。然後我進入並在我的網站上編輯頁面,選擇「插入」並選擇「Apps腳本小工具」。然後,我選擇我爲我的Google網站創建的Apps腳本小工具並將其添加到頁面。
我很困惑你的問題。您是否在使用[Google App Engine](http://code.google.com/appengine/),[Google協作平臺](https://sites.google.com)或[Google Apps Script](http:// code.google.com/googleapps/appsscript/)?如果您嘗試訪問防火牆內的數據,您是否在使用[Google安全數據連接器](http://code.google.com/securedataconnector/)? – 2012-02-11 07:01:58
我正在使用Google網站。當我管理我的網站時,有一個部分可以添加Google Apps腳本。所以我爲我的Google網站創建了一個Google Apps腳本。我還沒有嘗試過使用Google安全數據連接器,我會給出一個看看。 – user441603 2012-02-13 14:13:19
刪除了谷歌應用程序引擎標記。 – proppy 2012-02-13 17:15:23