Java实现从学校教务网上爬取数据(二)—— 获取课表信息以及简单处理

本文介绍如何使用Java实现从学校教务网上爬取并处理课表信息。首先通过HttpClient登录获取cookies,然后利用cookies进行get请求到达课程表页面。接着获取html文本,使用jsoup解析提取有用数据,最后对数据进行整理和封装。
摘要由CSDN通过智能技术生成

上一篇博客写下通过HttpClient的post方式实现了虚拟登陆教务网,登陆成功之后,获取课表就好说了。登录目的是为了获取cookies,不过上一篇的代码好像并没有管理cookies啊。其实,httpClient4.x就开始支持自动管理cookies,也就是说,只要一直使用同一个HttpClient实例,就不需要管网站返回过来的cookies了。那样的话,只需要再使用登录时使用的HttpClient实例来发送get请求到课程表所在的页面就可以跳转到课程表的页面了。


第一步:跳转到课程表页面

由于已经获取了cookie实例,不懂的可以参照我的上一篇博客 Java实现从学校教务网上爬取数据(一)—— 虚拟登陆,可以直接进行get请求进入课程表所在的网页

    /*检查是否已经登陆成功*/  
		if(httpClient==null)
			return null;

		HttpGet httpGet = new HttpGet(SURL);
		HttpResponse response;
		try {
			response = httpClient.execute(httpGet);
		} catch (ClientProtocolException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}



第二步:获取页面的html文本

执行execute()方法之后会返回一个HttpResponse对象,服务器返回的所有信息都会包含在里面,调用getEntity()方法获取到一个HttpEntity实例,然后再用EntityUtils.toString这个静态方法将其转化成Stri

  • 6
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值