Обновление сайта Google контентом с другой страницы - PullRequest
0 голосов
/ 11 февраля 2012

Вот моя ситуация: моя компания в большой степени полагается на Google для электронной почты, календаря, документов и т. Д. В каждом отделе есть сайт Google с информацией об отделе, и мне недавно было поручено поддерживать сайт моего отдела. Компания также имеет множество ресурсов, созданных на различных страницах интранета. Я хотел бы разместить на своем сайте Google некоторое содержимое со страниц нашей интрасети и подумать о двух возможных способах сделать это.

В идеале, поскольку это просто текст, который я хочу получить со страницы интрасети, я хотел бы написать скрипт приложения Google для чтения 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

Это работает с общедоступными сайтами, но при попытке использовать URL-адрес со страницы интрасети появляется сообщение «Синтаксическая ошибка: ошибка DNS: ...». Я предполагаю, потому что Google является хостингом сайта и не имеет доступа к нашей интрасети, хотя вы не можете получить доступ к любому из наших продуктов Google из-за пределов нашей сети, поэтому, возможно, это не так. Я нашел один сайт, который сказал, чтобы попытаться использовать параметр UseIntranet, но я все еще получаю ту же ошибку:

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

Я что-то здесь не так делаю?

Моя вторая мысль, поскольку мне нужно обновлять его только пару раз в день, - написать скрипт Python для локального запуска, который будет получать HTML-код со страницы интрасети и анализировать его, а затем обновлять содержимое в моем Google. сайт. У меня уже есть локальный скрипт для извлечения необходимого контента из интрасети, мне просто нужно найти способ обновить сайт Google из локального скрипта на python. (Я знаю, что это способ сделать это задом наперед, но если это сработает, то мне хорошо)

Так есть ли способ обновить сайт Google из локального скрипта?

Заранее спасибо за любую помощь !!

EDIT: Я должен уточнить, откуда я пытаюсь это сделать. Я использую сайты Google. Когда я захожу, чтобы управлять своим сайтом, есть раздел для добавления скриптов Google Apps. Поэтому я создал скрипт Google Apps для своего сайта Google, и именно здесь я пишу код, чтобы попытаться прочитать HTML-содержимое страницы интрасети. Затем я захожу и редактирую страницу на моем сайте, выбираю «Вставить» и выбираю «Гаджет скрипта приложений». Затем я выбираю созданный гаджет «Сценарий приложений» для своего сайта Google и добавляю его на страницу.

1 Ответ

1 голос
/ 28 февраля 2012

Два варианта:

  1. Сценарий приложений Google, который вы написали, выполняется сервером Google.Вы можете использовать Secure Data Connector , чтобы предоставить вашему сценарию доступ к вашим данным на основе "за брандмауэром" в интрасети (сюда входит параметр "useIntranet").1010 * Как вы говорите, вы также можете использовать локальный скрипт.Этот сценарий будет считывать данные вашей интрасети (как вы говорите, что сделали) и затем записывать их на страницу Сайтов Google.Вы бы использовали API данных Сайтов Google, и для этого есть библиотека Python .

...