我想知道是否可以抓取特定网址并检测其中的所有文字部分。
更具体地说,我想抓一篇文章,找到标题,副标题(如果存在)和内容。我知道在大多数文章中会有其他噪音内容,就像其他建议的标题一样,但我会想出将来如何解决它。现在,我只想问如何刮一个网址。 通过阅读其他Stack Overflow问题,我发现我可以使用ajax和jQuery来实现它(就像下面的一小段代码,我知道这是没有意义的),但我不确定我脑子里清楚了所有的段落。
$.ajax({
url: "/thePageToScrape.html",
dataType: 'text',
});
答案 0 :(得分:0)
如果它是同源的,您可以使用JQuery $.get
$.get("http://www.yourDomain.com/page=yourArticle", function (data) {
var title = $(data).find("#title").text();
});
如果文章的标题位于id =“title”的div中。
答案 1 :(得分:0)
这是一个很大的主题,通过在服务器端实现更好的结果 - 但仍然是一个简单的例子:
我们想要这个页面:var url = "http://someurl.com/scrapme1.html";
我们希望其内容看起来像这样:
<html>
<head>
....
</head>
<body>
<h4 class='page-title'>
I'm an article title
</h4>
<div class='summary'>
...
</div>
<div id="article_body">
...
</div>
</body>
</html>
现在我们需要标题(h4.page-title
),摘要(div.summary
)和文章内容(div#article_body
)。
我们可以将页面加载到jQuery元素中:
function getContent(url){
var content = null;
$.get('http://wwcshare/icenter/Pages/wwcMenuContent.aspx',
function(data) {
var $dom = $(data);
var title = $dom.find("h4.page-title");
var summary = $dom.find("div.summary");
var article_body = $dom.find("div#article_body");
//Do whatever you need....
}
}
更重要的注意事项:
$.post(), .load(), .ajax()
,甚至可以添加一些POST变量。享受。