解析RSS

本文介绍了一段用于解析RSS源的Java代码示例。该示例通过使用XmlReader从指定URL读取RSS源,并设置代理服务器进行网络请求。接着通过SyndFeedInput构建SyndFeed对象来获取RSS源中的所有信息,包括编码格式、新闻标题、链接、发布日期等关键信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public void parseRss() {

  // String rss =
  // "E://eclipse//workspace//rss3//WebContent//xml//demo.xml";
  String rss = "http://rss.sina.com.cn/jczs/taiwan20.xml";

  try {

   URL url = new URL(rss);
   // 读取Rss源
   System.setProperty("http.proxyHost", "10.64.25.3");
   System.setProperty("http.proxyPort", "8080");

   XmlReader reader = new XmlReader(url);

   System.out.println("Rss源的编码格式为:" + reader.getEncoding());
   SyndFeedInput input = new SyndFeedInput();
   // 得到SyndFeed对象,即得到Rss源里的所有信息
   SyndFeed feed = input.build(reader);
   // 得到Rss新闻中子项列表
   List entries = feed.getEntries();

   // 循环得到每个子项信息
   for (int i = 0; i  0) {
     name = urll.substring(lastloc + 1, urll.length());
    }
    contents.setFilename(name);

    String filetype = null;
    int last = urll.lastIndexOf(".");
    if (last > 0) {
     filetype = urll.substring(last + 1, urll.length());
    }
    contents.setFiletype(filetype);

    SyndContent description = entry.getDescription();
    // System.out.println("标题简介:" + description.getValue());
    contents.setTitles(description.getValue().trim());

    if (entry.getPublishedDate() != null) {
     java.text.SimpleDateFormat format = new java.text.SimpleDateFormat(
       "yyyy-MM-dd");
     String day = format.format(entry.getPublishedDate());
     System.out.println("发布时间:" + day);
     contents.setDay(day);
    }

    // 以下是Rss源可先的几个部分
    // System.out.println("标题的作者:" + entry.getAuthor());
    contents.setAuthor(entry.getAuthor());
    // 此标题所属的范畴
    List categoryList = entry.getCategories();
    if (categoryList != null) {
     for (int m = 0; m

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值