package com.elminster.retrieve.psn.runnable; import org.apache.commons.httpclient.Cookie; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpMethod; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.elminster.common.constants.Constants.StringConstants; import com.elminster.common.retrieve.RetrieveException; public class CompareGameRetriever extends BaseRetriever { private static final String LANG = "ja"; private static final Log logger = LogFactory.getLog(CompareGameRetriever.class); public CompareGameRetriever(String url) { super(url); } /** * {@inheritDoc} */ @Override protected void configHttpMethod(HttpClient client, HttpMethod httpMethod) throws RetrieveException { httpMethod.setRequestHeader("Host", "io.playstation.com"); httpMethod.setRequestHeader("Connection", "keep-alive"); httpMethod.setRequestHeader("Accept", "application/json, text/javascript, */*; q=0.01"); //httpMethod.setRequestHeader("X-Requested-With", "XMLHttpRequest"); // httpMethod.setRequestHeader("User-Agent", // "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36"); httpMethod.setRequestHeader("Origin", "https://www.playstation.com"); httpMethod.setRequestHeader("Referer", "https://www.playstation.com/en-us/my/compare-game-trophies/"); httpMethod.setRequestHeader("Accept-Encoding", "gzip, deflate, sdch"); httpMethod.setRequestHeader("Accept-Language", LANG); httpMethod.setRequestHeader("AlexaToolbar-ALX_NS_PH", "AlexaToolbar/alxg-3.3"); String cookie = StringConstants.EMPTY_STRING; Cookie[] cookies = client.getState().getCookies(); for (Cookie c : cookies) { cookie += c.toString() + StringConstants.SEMICOLON; } if (cookie.length() > 3) { // remove last <code>;</code> and <code>\r\n</code> cookie = cookie.substring(0, cookie.length() - 3); if (logger.isDebugEnabled()) { logger.debug("Cookie to Send: " + cookie); } httpMethod.setRequestHeader("Cookie", cookie); } } }