这里我们介绍两种方法来获取:
- javaScrip获取 因为浏览器安全问题在浏览器中运行时可能会存在跨域问题
- nodejs获取 获取不会存在跨域问题
一、JavaScript获取
可以使用 JavaScript 的 XMLHttpRequest 对象或 fetch API 来获取网页的 HTML 代码,然后使用正则表达式或 DOM 操作来提取网页的元数据。
例如,使用 fetch API 获取 HTML 代码并提取 title标题 keywords关键词 description描述 favicon图标 的示例代码如下:
注意:如果网站有跨域无法使用该方法
定义方法:
async function getWebsiteMetadata(url) {
try {
const response = await fetch(url);
const text = await response.text();
const parser = new DOMParser();
const doc = parser.parseFromString(text, 'text/html');
// 获取 title
const title = doc.title;
// 获取 favicon
const faviconEl = doc.querySelector('link[rel~="icon"]');
const favicon = faviconEl ? faviconEl.href : null;
// 获取 keywords
const keywordsEl = doc.querySelector('meta[name~="keywords"]');
const keywords = keywordsEl ? keywordsEl.content : null;
// 获取 description
const descriptionEl = doc