public List<FacebookProfile> getUserFromSearch(String searchQuery) {
		CloseableHttpClient httpClient = HttpClients.custom().setConnectionManager(this.cm).build();

		HttpGet httpget = null;
		try {
			httpget = new HttpGet("https://www.facebook.com/search/results.php?type=users&q="
			        + URLEncoder.encode(searchQuery, "UTF-8"));
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}

		CloseableHttpResponse response = null;
		HttpEntity entity = null;
		String str = null;

		try {
			response = httpClient.execute(httpget, this.ctx);
			try {
				entity = response.getEntity();
				str = EntityUtils.toString(entity);
			} finally {
				EntityUtils.consume(response.getEntity());
				response.close();
			}
		} catch (ClientProtocolException ex) {
			// Handle protocol errors
		} catch (IOException ex) {
			// Handle I/O errors
		}

		String regex = "(href=\"https://www.facebook.com/)([0-9a-zA-Z.]*)\"";

		Set<String> userURLSet = new HashSet<String>();
		List<String> usernameList = new ArrayList<String>();

		Matcher m = Pattern.compile(regex).matcher(str);
		while (m.find()) {
			if (!userURLSet.add(m.group())) {
				usernameList.add(m.group().replace("href=\"https://www.facebook.com/", "").replace("\"", ""));
			}
		}

		Collection<FacebookProfile> profileCollection = this.getUserFromThreadedAPI(usernameList);
		List<FacebookProfile> profileList = new ArrayList<FacebookProfile>(usernameList.size());
		for (int i = 0; i < usernameList.size(); i++) {
			profileList.add(null);
		}
		for (FacebookProfile profile : profileCollection) {
			profileList.set(usernameList.indexOf(profile.getUserUIDString()), profile);
		}
		while (profileList.remove(null)) {
		}

		return profileList;
	}