Javascript 如何使用页面URL';s

Javascript 如何使用页面URL';s,javascript,meta-tags,Javascript,Meta Tags,大约有200个产品编号和相关的产品URL。我必须使用JavaScript代码提取这些产品的标题和关键字的元标记wrt,并将它们输出到我的计算机中的一个文件中。怎么做 示例:产品编号:D2650,产品URL为: 这与199种产品中的其他产品相似。我需要提取所有这些页面的元“关键字”和元“标题” JS代码的帮助会很有帮助。如果您使用纯javascript,您可以这样做: var metas = document.getElementsByTagName('meta'); //get all th

大约有200个产品编号和相关的产品URL。我必须使用JavaScript代码提取这些产品的标题和关键字的元标记wrt,并将它们输出到我的计算机中的一个文件中。怎么做

示例:产品编号:D2650,产品URL为:

  • 这与199种产品中的其他产品相似。我需要提取所有这些页面的元“关键字”和元“标题”

JS代码的帮助会很有帮助。

如果您使用纯javascript,您可以这样做:

var metas = document.getElementsByTagName('meta'); //get all the meta tag elements

//iterate through them
for (i=0; i<metas.length; i++) { 
   if (metas[i].getAttribute("name") == "keywords") { 
     console.log(metas[i].getAttribute("content")); 
   }
  else if (metas[i].getAttribute("name") == "description") { 
     console.log(metas[i].getAttribute("content")); 
   } 
} 
我已经根据您共享的源代码给出了代码片段。您可以对其进行修改以满足您的需要。希望它能让你朝着正确的方向开始

编辑

我可以理解你是一个初学者,但我不打算从头到尾发布整个代码,因为有几种方法可以做到这一点,如果你尝试的话,你应该也可以自己学习。这并不难

问题的出发点应该是访问javascript中远程源的
html
。我们通常使用
post
get
请求来实现这一点,但浏览器中通常不允许跨源网络请求。检查哪一个详细说明了这个问题

现在,一个简单的解决方法是寻找
api
,它允许您从在线资源中提取HTML。是一个这样的工具,允许您从远程源“查询”html。他们还有一个非常友好的URL,您可以在其中直接发出
post
请求并查询
html
。它也有很好的文档记录,应该很容易开始使用。在控制台中尝试以下yql查询:

 select * from html where url='http://www.sigmaaldrich.com/catalog/product/sigma/D2650?lang=en&region=US' and xpath='/html/head/meta'
只需查看结果,您将只返回
XML
JSON
中的
meta
标记,并为yql查询生成一个。因此,只需向该URL发出
get
/
post
请求,然后使用我之前发布的代码,前提是返回的数据格式正确
XML
。如果返回的是
JSON
,则只需解析JSON,这也应该非常简单


所有这一切现在听起来可能真的很复杂,但如果你认真去做,一步一个脚印,你就能自己解决你的问题。从学习使用YQL控制台开始,用javascript发出网络请求,然后把它们放在一起。它应该是一个有趣的练习。

如果你使用纯javascript,你可以这样做:

var metas = document.getElementsByTagName('meta'); //get all the meta tag elements

//iterate through them
for (i=0; i<metas.length; i++) { 
   if (metas[i].getAttribute("name") == "keywords") { 
     console.log(metas[i].getAttribute("content")); 
   }
  else if (metas[i].getAttribute("name") == "description") { 
     console.log(metas[i].getAttribute("content")); 
   } 
} 
我已经根据您共享的源代码给出了代码片段。您可以对其进行修改以满足您的需要。希望它能让你朝着正确的方向开始

编辑

我可以理解你是一个初学者,但我不打算从头到尾发布整个代码,因为有几种方法可以做到这一点,如果你尝试的话,你应该也可以自己学习。这并不难

问题的出发点应该是访问javascript中远程源的
html
。我们通常使用
post
get
请求来实现这一点,但浏览器中通常不允许跨源网络请求。检查哪一个详细说明了这个问题

现在,一个简单的解决方法是寻找
api
,它允许您从在线资源中提取HTML。是一个这样的工具,允许您从远程源“查询”html。他们还有一个非常友好的URL,您可以在其中直接发出
post
请求并查询
html
。它也有很好的文档记录,应该很容易开始使用。在控制台中尝试以下yql查询:

 select * from html where url='http://www.sigmaaldrich.com/catalog/product/sigma/D2650?lang=en&region=US' and xpath='/html/head/meta'
只需查看结果,您将只返回
XML
JSON
中的
meta
标记,并为yql查询生成一个。因此,只需向该URL发出
get
/
post
请求,然后使用我之前发布的代码,前提是返回的数据格式正确
XML
。如果返回的是
JSON
,则只需解析JSON,这也应该非常简单


所有这一切现在听起来可能真的很复杂,但如果你认真去做,一步一个脚印,你就能自己解决你的问题。从学习使用YQL控制台开始,用javascript发出网络请求,然后把它们放在一起。它应该是一个有趣的练习。

根据您需要获取元数据的页面集,这个现有的API可以很好地提取您需要的信息。

这是一个简单的REST API:
GEThttps://opengraph.io/api/1.0/site/

它适用于使用opengraph标记的页面。对于其他页面,它有时会依赖于获取其他元数据标记信息。您可以在此处使用测试工具测试在特定页面上可以找到的信息:


它在一个项目中运行得很好,并且节省了我连接YQL或进行其他服务器端更改的额外时间。[注意:我与此产品或其创建者没有任何关系。我是通过在线研究找到的,并在项目中使用了它。]

根据您需要获取元数据的页面集,此现有API可能会很好地提取您需要的信息。

这是一个简单的REST API:
GEThttps://opengraph.io/api/1.0/site/

它适用于使用opengraph标记的页面。对于其他页面,它有时会依赖于获取其他元数据标记信息。您可以在此处使用测试工具测试在特定页面上可以找到的信息:

它在一个项目中对我很有效,一个