如何解决Flutter 阅读 Google 新闻 RSS 提要,无法获得描述
我正在尝试使用 dart 读取 RSS 提要,它可以正常工作,只有 description 属性不是真正可读的。问题是 Google 新闻 RSS 提要给了我一些我不知道如何处理的 html 数据,有一个很好的 android 示例,它适用于 Kotlin,但我没有将其转移到 dart。 (Android 示例:https://jtmuller5-98869.medium.com/replacing-the-google-news-api-with-an-rss-feed-and-jsoup-c351de353479)。 RSS 提要如下所示:
描述应该是文章的开头或第二个标题,就像您通常在谷歌新闻中搜索时发现的那样。在 android 示例中,他设法通过一些额外的 html 请求来获取它。有人知道如何像在谷歌新闻中搜索一样获得描述吗?那真是太好了。非常感谢。
这是我的代码:
import 'package:flutter_stocksplus_v1/Models/news_Post.dart';
import 'package:http/http.dart' as http;
import 'package:webfeed/webfeed.dart';
import 'package:url_launcher/url_launcher.dart';
import 'package:beautifulsoup/beautifulsoup.dart';
import 'package:html/parser.dart';
//import 'package:cached';
import 'package:intl/intl.dart';
class Google_News_API {
String baseUrl = 'http://news.google.com/news?';
String search_language = 'de-DE';
String search_country = 'DE';
String search_maxNumber = '10';
Future<List<News_Post>> loadFeed2(name) async {
List<News_Post> response_array = [];
print('test Rssfeed');
String search_Term = name + '+Aktie';
String feedURL = 'http://news.google.com/news?q=' +
search_Term +
'&hl=' +
search_language +
'&sort=date&gl=' +
search_country +
'&num=' +
search_maxNumber +
'&output=rss';
final response = await http.get(feedURL);
if (response.statusCode == 200) {
var responseFinal = RssFeed.parse(response.body);
for (var item in responseFinal.items) {
var title = item.title;
var link = item.link;
var date = item.pubDate;
var description = item.description;
var source = item.source;
DateTime tempDate = HttpDate.parse(date).toLocal();
var formatter = new DateFormat('d MMM / H:m');
var newsPost = News_Post(title: title,text: '',date: tempDate,link: link,source: source.value);
response_array.add(newsPost);
}
}
return response_array;
}
}```
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。