我正在尝试建立一个新闻中心应用程序,我的目标是从其他新闻频道中提取新闻文章,对其进行总结,并以无偏见的方式以子弹的形式呈现。 我已经启动并运行了算法,我只需要从NDTV,CNN等其他网站收集数据的代码。 请给出一个如何进行此操作的说明。
代码,链接,示例和屏幕截图会有很大帮助。 谢谢! (Y)
答案 0 :(得分:1)
webscraping是你的方式; 您可以使用scrapy,beautifulsoup或selenium获取您需要的新闻报道或所有内容,它们是python的模块,用于从html页面获取数据(文本)和之后,您可以将数据保存到任何您想要的地方,例如数据库; 最好将rss页面用作头条新闻和你认为可以获得的东西。
答案 1 :(得分:0)
有一个名为QueryList
(http://git.oschina.net/jae/QueryList)的php lib,它在内部使用phpQuery
,并使用一些css选择器过滤器数组来获取特定网址中的特定内容。
该文档是中文的(我不认为有英文版本),但使用起来非常简单:
<?php
// include the lib
require_once('QueryList.class.php');
// url to fetch content
$url = 'http://www.example.com/index.html';
// filter rules using css selector grammar
$regArr = array(
'time' => array('td:nth-child(2)', 'text'),
'summary' => array('td:nth-child(3) td:nth-child(3)', 'text'),
'imgSrc' => array('h1 > a > img', 'src')
);
// optional, firstly find `.divbox > table`, then find the things defined by $regArr in each `.divbox > table`
$regRange = '.divbox > table';
// do the query
$result = QueryList::Query($url, $regArr, $regRange);
// the result will be an array like:
/** Array
* (
* [0] => Array
* (
* 'time' => ,
* 'summary' => ,
* 'imgSrc' =>
* )
* [1] => Array
* (
* 'time' => ,
* 'summary' => ,
* 'imgSrc' =>
* )
* ...
* )
*/
echo '<pre>';
print_r($result->jsonArr);
echo '</pre>';
您还可以在$ regArr中定义排除模式和回调函数,我认为这将满足您的要求。