我想通过使用该推文的公共链接来阅读来自Java的推文的内容,例如:
http://twitter.com/FoodRhythms/status/461201880354271232/photo/1
我使用与从其他类型的页面阅读内容相同的程序:
String XMLstring = "";
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String inputLine;
while ((inputLine = in.readLine()) != null)
XMLstring += inputLine;
in.close();
然而,当其他页面有效时,当从Twitter链接读取时,返回的内容为空(BufferedReader
对象不包含任何行)。
对此有任何提示吗?
答案 0 :(得分:2)
您正在以不必要的复杂方式解决问题。您可以使用HTML解析器库(例如Jsoup)来解析其内容的URL。
一个例子如下:
String url = "https://twitter.com/FoodRhythms/status/461201880354271232/photo/1";
Document doc = Jsoup.connect(url).get();
Element tweetText = doc.select("p.js-tweet-text.tweet-text").first();
System.out.println(tweetText.text());
将输出
Miso-Glazed Japanese Eggplant
以类似的方式,您可以选择您想要的任何元素!
答案 1 :(得分:0)
从twitter阅读需要oAuth身份验证,您需要遵守twitter for java库以获取所需的数据。
希望这会有所帮助..!
http://www.javacodegeeks.com/2012/03/twitter-api-on-your-java-application.html
答案 2 :(得分:0)
您的代码现在的问题是您尝试通过http访问twitter,其中隐式重定向到https正在发生。使用您的确切代码,将网址修改为https,一切正常。