从网络获取JSON格式数据

简介: public JSONObject getJson() { JSONObject resultJson = null; if ("".
    public JSONObject getJson() {
		JSONObject resultJson = null;
		if ("".equals(this.mUrl) || this.mUrl == null) {
			return null;
		}

		HttpClient httpClient = this.getHttpClient();
		StringBuilder uriStringBuilder = new StringBuilder(this.mUrl);
		StringBuilder resultStringBuilder = new StringBuilder();
		HttpGet httpGet = new HttpGet(uriStringBuilder.toString());
		BufferedReader bufferReader = null;
		HttpResponse httpResponse = null;
		try {
			httpResponse = httpClient.execute(httpGet);
		} catch (Exception e) {
			return null;
		}

		int status = httpResponse.getStatusLine().getStatusCode();
		if (HttpStatus.SC_OK == status) {
			HttpEntity entity = httpResponse.getEntity();
			if (entity != null) {
				try {
					bufferReader = new BufferedReader(new InputStreamReader(entity.getContent(), "UTF-8"), 8192);
					String line = null;
					while ((line = bufferReader.readLine()) != null) {
						resultStringBuilder.append(line + "/n");
					}
					resultJson = new JSONObject(resultStringBuilder.toString());
				} catch (Exception e) {
					System.out.println("fail fail fail");		
				} finally {
					try {
						bufferReader.close();
					} catch (IOException e) {
						System.out.println("fail fail fail");
						e.printStackTrace();
					}
				}
			}

		} else {
			return null;
		}
		return resultJson;
	}
    
	public HttpClient getHttpClient() {
		this.mHttpParams = new BasicHttpParams();
		HttpConnectionParams.setConnectionTimeout(this.mHttpParams, 20 * 1000);
		HttpConnectionParams.setSoTimeout(this.mHttpParams, 20 * 1000);
		HttpConnectionParams.setSocketBufferSize(this.mHttpParams, 8192);
		HttpClientParams.setRedirecting(this.mHttpParams, true);
		HttpClient client = new DefaultHttpClient(this.mHttpParams);
		return client;
	}
    

相关文章
|
13天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习的魔法:如何用神经网络解锁数据的奥秘
在人工智能的璀璨星空中,深度学习犹如一颗最亮的星,它以其强大的数据处理能力,改变了我们对世界的认知方式。本文将深入浅出地介绍深度学习的核心概念、工作原理及其在不同领域的应用实例,让读者能够理解并欣赏到深度学习技术背后的奇妙和强大之处。
26 3
|
2天前
|
数据采集 存储 监控
网络爬虫的最佳实践:结合 set_time_limit() 与 setTrafficLimit() 抓取云盘数据
本文探讨了如何利用 PHP 的 `set_time_limit()` 与爬虫工具的 `setTrafficLimit()` 方法,结合多线程和代理 IP 技术,高效稳定地抓取百度云盘的公开资源。通过设置脚本执行时间和流量限制,使用多线程提高抓取效率,并通过代理 IP 防止 IP 封禁,确保长时间稳定运行。文章还提供了示例代码,展示了如何具体实现这一过程,并加入了数据分类统计功能以监控抓取效果。
33 16
网络爬虫的最佳实践:结合 set_time_limit() 与 setTrafficLimit() 抓取云盘数据
|
1天前
|
存储 安全 网络安全
云计算与网络安全:保护数据的关键策略
【9月更文挑战第19天】在数字时代,云计算已成为企业和个人存储和处理数据的优选方式。然而,随之而来的网络安全挑战也日益严峻。本文将深入探讨云计算环境中的网络安全问题,并提供实用的策略来保护云服务中的数据安全。我们将从基础的网络安全措施出发,逐步深入到更复杂的信息安全技术,旨在为读者提供一套全面的解决方案,确保他们的数据在云端得到妥善保护。
12 5
|
3天前
|
存储 监控 安全
网络安全与信息安全:保护数据的重要性与实践措施
本文深入探讨了网络安全和信息安全领域内的关键概念,包括网络漏洞、加密技术以及安全意识的重要性。通过分析这些要素,文章提供了实用的策略来增强个人和企业的数据保护能力。我们将探讨如何识别和防范潜在的网络威胁,并强调了持续更新安全知识和采取预防措施的必要性。
|
10天前
|
JSON JavaScript 前端开发
Haskell中的数据交换:通过http-conduit发送JSON请求
Haskell中的数据交换:通过http-conduit发送JSON请求
|
16天前
|
存储 安全 网络安全
云计算与网络安全:如何保护您的数据在云端
【9月更文挑战第4天】在数字化时代,云计算已成为企业和个人存储和处理数据的首选方式。然而,随着云服务的普及,网络安全问题也日益凸显。本文将探讨云计算的基本原理,网络安全的重要性,以及如何在使用云服务时保护数据安全。我们将从云服务的基本概念出发,深入讨论网络安全的关键技术,最后提供一些实用的建议,帮助您在使用云服务时确保数据安全。
43 6
|
9天前
|
SQL 安全 算法
网络安全与信息安全:保护数据,从了解漏洞开始
在数字化浪潮中航行,我们每个人都是一艘小船。网络安全漏洞就像是潜藏在水下的暗礁,随时可能让我们的航程受阻甚至沉没。加密技术则如同坚固的船体,能够抵御外界的风险和攻击。然而,即便有了先进的防护措施,缺乏安全意识的船员仍然会让船只处于风险之中。本文旨在揭示网络安全的常见漏洞,探讨加密技术的奥秘,并强调培养安全意识的重要性,以期为每位数字海洋中的航行者提供指引灯塔。
|
13天前
|
存储 JSON API
Python编程:解析HTTP请求返回的JSON数据
使用Python处理HTTP请求和解析JSON数据既直接又高效。`requests`库的简洁性和强大功能使得发送请求、接收和解析响应变得异常简单。以上步骤和示例提供了一个基础的框架,可以根据你的具体需求进行调整和扩展。通过合适的异常处理,你的代码将更加健壮和可靠,为用户提供更加流畅的体验。
39 0
|
1天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【9月更文挑战第19天】在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术以及安全意识等方面的知识,帮助读者更好地了解网络安全的重要性,提高自己的网络安全防护能力。
25 13
|
2天前
|
SQL 安全 算法
网络安全与信息安全:保护你的数字世界
【9月更文挑战第18天】在这个数字信息时代,网络安全和信息安全的重要性不言而喻。从网络漏洞的发现到加密技术的应用,再到安全意识的提升,每一个环节都至关重要。本文将深入探讨这些主题,并提供实用的建议和代码示例,以帮助读者更好地保护自己的数字世界。
21 11