Javascript 在Node.js中进行Web抓取/解析以检测HTML页面的语言?
我正在使用Readability Parser API和node Readability模块为构建在node.js上的服务器执行web抓取/解析。我可以获得关于出版商和博客(我的目标)网站上发表的文章的很多信息(标题、链接、日期、内容、长度…),但无法获得他们的书面语言。你知道我该怎么做吗 有谷歌翻译API,但它不是免费的,我不需要任何翻译。Javascript 在Node.js中进行Web抓取/解析以检测HTML页面的语言?,javascript,html,node.js,parsing,web-scraping,Javascript,Html,Node.js,Parsing,Web Scraping,我正在使用Readability Parser API和node Readability模块为构建在node.js上的服务器执行web抓取/解析。我可以获得关于出版商和博客(我的目标)网站上发表的文章的很多信息(标题、链接、日期、内容、长度…),但无法获得他们的书面语言。你知道我该怎么做吗 有谷歌翻译API,但它不是免费的,我不需要任何翻译。 有Alchemy Language Detection API,或者有node Language detect模块,但是它似乎可以从给定的文本中检测语言,
有Alchemy Language Detection API,或者有
node Language detect
模块,但是它似乎可以从给定的文本中检测语言,而在我的例子中,关于语言的一些信息可能可以在页面的HTML代码中找到(请参阅).您可以请求链接内容,然后从HTTP响应头获取语言
一些服务器将使用
内容语言标题进行响应 虽然推断网页的语言可能很困难(您好!),但HTML是有帮助的。查找lang
属性:
<html lang="en-us">
应该注意的是,任何元素都可以具有上述属性。就我的开场白而言:
<p lang="en-us">While inferring the language of a web page can be difficult <span lang="fr">(Bonjour!)</span></p>
推断网页语言可能很困难(您好!)
更多信息请点击此处:
或者,您可以检查返回标题的内容语言
,但这并不具体,它定义了整个页面。谢谢。我将向给定的URL发出请求。然后我应该查找HTMLlang属性还是HTTP响应头?谢谢。此代码有效:var请求=require(“请求”);var cheerio=要求(“cheerio”);var url='1〕http://www.vox.com/cards/israel-palestine/peace-process-failure'; 请求(url,函数(err,resp,html){$=cheerio.load(html);var langue=$(“html”).attr(“lang”);console.log(langue);})代码>谢谢。我将向给定的URL发出请求。然后我应该查找HTMLlang属性还是HTTP响应头?