爬取新闻数据测试
This commit is contained in:
@@ -353,6 +353,7 @@ public class StockTask {
|
||||
public void saveStockNews() {
|
||||
String news = stockService.getNews();
|
||||
List<String> newsList = Arrays.asList(news.split("<a href="));
|
||||
newsList = newsList.subList(1, newsList.size());
|
||||
newsList.forEach( n -> {
|
||||
String contentUrl = n.substring(1, n.indexOf("class=\"img-smllnews\"") - 2);
|
||||
String id = contentUrl.substring(contentUrl.lastIndexOf("-") + 1, contentUrl.lastIndexOf("_"));
|
||||
|
||||
@@ -7,6 +7,7 @@ import java.util.stream.Collectors;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
import cn.qutaojing.common.PageParam;
|
||||
import cn.stock.market.domain.basic.entity.SiteNews;
|
||||
import cn.stock.market.domain.basic.repository.SiteNewsRepository;
|
||||
import cn.stock.market.infrastructure.db.po.QSiteNewsPO;
|
||||
@@ -149,39 +150,10 @@ public class StockApiController {
|
||||
}
|
||||
|
||||
@RequestMapping({"getINDNews.do"})
|
||||
@ApiOperation(value = "印度热门股票列表", httpMethod = "GET")
|
||||
@ApiOperation(value = "印度新闻列表", httpMethod = "GET")
|
||||
@ResponseBody
|
||||
public ServerResponse getINDNews() {
|
||||
String news = stockService.getNews();
|
||||
List<String> newsList = Arrays.asList(news.split("<a href="));
|
||||
newsList = newsList.subList(1, newsList.size());
|
||||
newsList.forEach( n -> {
|
||||
String contentUrl = n.substring(1, n.indexOf("class=\"img-smllnews\"") - 2);
|
||||
String id = contentUrl.substring(contentUrl.lastIndexOf("-") + 1, contentUrl.lastIndexOf("_"));
|
||||
String imgUrl = n.substring(n.indexOf("img src=") + 9, n.indexOf("?"));
|
||||
String time = n.substring(n.indexOf("Last Updated") + 23, n.indexOf("IST") - 9);
|
||||
String title = n.substring(n.indexOf("html\">") + 6, n.indexOf("<div class=\"short-video-img\">") - 47);
|
||||
|
||||
SiteNews siteNews = new SiteNews();
|
||||
siteNews.setAddTime(new Date());
|
||||
siteNews.setSourceId(id);
|
||||
siteNews.setTitle(title);
|
||||
siteNews.setDescription(time);
|
||||
siteNews.setImgurl(imgUrl);
|
||||
siteNews.setContent(stockService.getNewsInfo(contentUrl));
|
||||
List<SiteNews> list = newsRepository.findAll(QSiteNewsPO.siteNewsPO.sourceId.eq(id));
|
||||
if (list.size() == 0) {
|
||||
newsRepository.save(siteNews);
|
||||
}
|
||||
});
|
||||
return null;
|
||||
}
|
||||
|
||||
@RequestMapping({"getINDNewsInfo.do"})
|
||||
@ApiOperation(value = "印度热门股票列表", httpMethod = "GET")
|
||||
@ResponseBody
|
||||
public ServerResponse getINDNewsInfo(@RequestParam("url") String url) {
|
||||
return ServerResponse.createBySuccess(stockService.getNewsInfo(url));
|
||||
public ServerResponse getINDNews(@RequestParam("pageSize") Integer pageSize, @RequestParam("pageNum") Integer pageNum) {
|
||||
return ServerResponse.createBySuccess(newsRepository.findAll(PageParam.of(pageNum, pageSize)));
|
||||
}
|
||||
|
||||
//印度股票时线-K线
|
||||
|
||||
Reference in New Issue
Block a user