我将在一个学校的课堂上使用Twitter进行一些语义文本分析。我下载了Hosebird客户端for Java并运行FilterStreamExample.java:https://github.com/twitter/hbc/blob/master/hbc-example/src/main/java/com/twitter/hbc/example/FilterStreamExample.java
运行它,我得到了很多关于用户的个人资料,他们的设置,背景图片,等等。我只想要推特文本。也许还有位置和用户名。
这可能是一个愚蠢的问题,但我如何使它只显示“文本”信息?现在,它只是打印出所有的东西。
// Do whatever needs to be done with messages
for (int msgRead = 0; msgRead < 1000; msgRead++) {
String msg = queue.take();
System.out.println(msg);
}
我可能可以在字符串本身中搜索“文本”,但这似乎有点麻烦。难道没有更好的方法吗?
发布于 2015-12-03 18:09:58
来自twitter流API的响应是JSON字符串。将字符串解析为JSON对象,并从键"text“中获取值
import org.json.*;
for (int msgRead = 0; msgRead < 1000; msgRead++) {
String msg = queue.take();
JSONObject obj = new JSONObject(msg);
String text= obj.getString("text");
System.out.println(msg);
}
*Not Tested
在Java How to parse JSON in Java中解析JSON请参考以下内容
https://stackoverflow.com/questions/34025156
复制相似问题