public void processData(String link, String urlText, WriteToCsvPostsFile writeToCSV, int howTimes){
		Document doc;
		try {
			doc = Jsoup.connect(link).userAgent("Mozilla").get();
			Element body = doc.body();
			if(body!=null) {
				findAllPosts(body);
			}
		} catch (SocketTimeoutException a){
			//try three times the same URL if timeoutexecption
			if (howTimes+1==3){
				OutputParams.appendToFailedUrlsFile(link);
				Logger.getLogger(InitParser.class).debug("Can't process this URL :" + link +" Content, cause time out exception");	
			} else {
				processData(link, urlText, writeToCSV, howTimes+1);
			}
			return;
		} catch (IOException e) {
			Logger.getLogger(InitParser.class).debug("Exception :"+e.getMessage() + " Description :"+ e.toString());
			return;
		} 

		writeToCSV.writePostToCSVFile(ids, authors, dates, messages, link, urlText);

		OutputParams.appendToSuccedUrlsFile(link);
	}