Java访问网页API
Java访问网页APIJava中有一个类是专门用于访问网络的类,他就是URL类通常我们通过使用该类来实现访问网址的目的。首先我们先准备一个URL类的对象URL url = new URL(“网址内容”);创建该类后,我们就会自动查询该网址,当然这里有个前提条件就是要连接网络,所以为避免无网络的情况,我们需要准备一个将错误抛出的部分(throws IOException)随后我们要连接域名所对应的服
Java访问网页API
Java中有一个类是专门用于访问网络的类,他就是URL类
通常我们通过使用该类来实现访问网址的目的。
首先我们先准备一个URL类的对象
URL url = new URL(“网址内容”);
创建该类后,我们就会自动查询该网址,当然这里有个前提条件就是要连接网络,所以为避免无网络的情况,我们需要准备一个将错误抛出的部分(throws IOException)
随后我们要连接域名所对应的服务器,打开服务器
此处我们得到对象conn
URLConnection conn = url.openConnection() ;
然后我们来进行加载数据,获取加载数据的字节输入流,加载成为输入流,我们才能在后面进行输出。
InputStream is = conn.getInputStream() ;
我们将对象is装饰为能一次读取一行的字符输入流br
BufferedReader br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
因我们常用的网址中的文字格式采用的是UTF-8,所以我们在其中加上了UTF-8,如果访问网址的文字格式为其他类型,我们在此出应放上其他的类型。
随后我们加载一行数据,将其保存在一个String类型的变量中
String text = br.readLine() ;
若不读取整行,我们在此可以选择进行读取部分输出,然后将其分类,进而输出我们想要的信息。
随后我们进行输出显示即可
System.out.println(text);
最后我们因为系统不会自动停止我们的运行指令,我们在最后要将运行程序暂停,释放资源。
br.close() ;
最后我们放上一段可以直接访问图灵机器人的代码,来为大家展示我们整个代码的全过程。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.util.Scanner;
public class demo1 {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
String que = sc.nextLine();
//将发送给图灵机器人的文字转换为URL编码
String question = URLEncoder.encode(que,"UTF-8");
//1、先准备一个URL类的对象(网址)
//发送短信的api地址
//URL url = new URL("https://itdage.com/kkb/kkbsms?key=xzk&number=15779608136&code=521314");
//图灵机器人的API地址
URL url = new URL("https://api.jisuapi.com/iqa/query?appkey=62958a3a6ef3c56d&question="+question);
//2、连接服务器:打开服务器连接,得到对象conn
URLConnection conn = url.openConnection() ;
//3、加载数据:获取加载数据的字节输入流
InputStream is = conn.getInputStream() ;
//4、将is装饰为能一次读取一行的字符输入流br
//BufferedReader br = new BufferedReader(new InputStreamReader(is));
BufferedReader br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
//5、加载一行数据
String text = br.readLine() ;
//6、显示
System.out.println(text);
//7、释放资源
br.close() ;
}
}
上述代码既可以直接与图灵机器人进行对话,若需要多次对话,加上循环即可。
更多推荐
所有评论(0)