Java-бот для Instagram работает по-другому на Windows, чем на Ubuntu - PullRequest
0 голосов
/ 15 марта 2019

Я внедрил бота в Instagram в java, чтобы автоматически получать фотографии. Когда я запускаю его на своей машине (Windows), все идеально. Когда я запускаю его на VPS (Ubuntu), я получаю лимит аккаунта после нескольких лайков. Что может отличаться в этих двух средах и почему я ограничен в VPS, а на моей машине нет?

Вот метод, который создает запрос, если он помогает:

private HttpURLConnection prepareRequest(String targetURL, String method,
        String referer) {
    try {
        URL url = new URL(targetURL);

        HttpURLConnection request = (HttpURLConnection) url
                .openConnection();

        request.setInstanceFollowRedirects(false);
        request.setRequestMethod(method);

        request.setRequestProperty("Content-Language", "en-US");
        request.setRequestProperty("Accept-Encoding", "gzip");

        request.setRequestProperty("Content-Type",
                "application/json; charset=utf-8");

        if (referer != null) {
            request.setRequestProperty("Referer", referer);
        }

        Cookie csrfCookie = getCookie("csrftoken");
        request.setRequestProperty("X-CSRFToken", csrfCookie.getValue());

        List<Cookie> cookieList = new ArrayList<Cookie>();
        cookieList.add(getCookie("sessionid"));
        cookieList.add(getCookie("mid"));
        cookieList.add(getCookie("csrftoken"));
        cookieList.add(getCookie("urlgen"));

        String cookieHeaderValue = "";
        for (Cookie cookie : cookieList) {
            if (cookie != null) {
                cookieHeaderValue += cookie.getName() + "="
                        + cookie.getValue() + "; ";
            }
        }

        request.setRequestProperty("Cookie", cookieHeaderValue);
        return request;
    } catch (Exception e) {
        e.printStackTrace();
        log(String.format("Error on preparing the request for %s",
                targetURL));
        return null;
    }
}
...