Войдите на веб-сайт с помощью скрипта Google Apps и пролистайте данные - PullRequest
0 голосов
/ 15 марта 2019

Я хочу войти на сайт и перейти на определенную страницу, чтобы очистить данные. Я планирую использовать чистку (а не API в настоящее время), и для целей обучения я планирую сделать это на моей учетной записи stackoverflow, чтобы узнать, как со временем менялся рейтинг репутации и по какой теме.

И я использую скрипт приложений Google в качестве языка программирования, а также для целей обучения.

Я использую приведенный ниже код для входа в систему:

function stackLogin() {

  var url = "https://stackoverflow.com/users/login?ssrc=head";
  //var url = "https://stackoverflow.com/";

  var payload = {
    "email":"myLogin",
    "password":"myPassword"
  };


  var opt = {
    "payload":payload,
    "method":"post",
    "followRedirects": false
  };  

  var response = UrlFetchApp.fetch(url, opt);
  var sessionDetails = response.getAllHeaders()['Set-Cookie'];
  var header = {
    'Cookie': sessionDetails[1]
  };  

  Logger.log(response.getResponseCode()); 
  Logger.log(response);  
}


Когда я использую:

url = "https://stackoverflow.com/users/login?ssrc=head"

Я получаю "код ответа = 302" , но "HTML-ответ" очень короткий. Я также вижу, что новый логин ip появляется на StackExchange OpenID enter image description here.


Но если я использую:

url = "https://stackoverflow.com"

Я получаю "код ответа = 200" , а "HTML-ответ" очень длинный. Я также вижу, что новый логин ip не появляется на StackExchange OpenID .


Вопрос 1) Таким образом, вход в систему возможен только по url = "https://stackoverflow.com/users/login?ssrc=head", обряд ??


Вопрос 2) Если я могу войти, я хочу нажать «кнопку аватара моего профиля»

Avatar button


что приводит меня на страницу "Профиль пользователя / резюме", где я хочу нажать "Репутация" Profile Summary Page


который ведет меня на «страницу журнала репутации», где я собираю информацию о репутации, полученной мной по дате и темам. Reputation log

Теперь я хочу извлечь эти значения репутации в виде таблицы.

Я могу очистить данные, проверив значения классов этих журналов репутации, если смогу потянуть страницу HTML.
Однако основная проблема, с которой я столкнулся, заключается в следующем: как нажимать различные кнопки (после успешного входа в систему), чтобы перейти на страницу «Журнал репутации».

...