Web 抓取需要 t2.gstatic URL 个参数
Need t2.gstatic URL parameters for Web Scraping
我正在检查是否可以使用 gstatic 从网站上抓取 favicon。下面将获取网站 Favicon:
https://t2.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://yahoo.com&size=64
我知道 URL 参数可能不适合一般用途,只是检查是否有人知道这可能被记录在哪里?
更新:我刚刚开始在 Google App Script 上构建应用程序。我需要列出网站名称及其网站图标和网站描述等元数据。目前唯一的方法是阅读网页并使用 beautifulSoup 解析页面,然后找到网站图标。我遇到了上面的link,它会直接给我图标!但我想更好地理解它并尝试找到有关 gstatic 的 URL 参数的更多信息。
我也愿意接受从 Google App Script 抓取网站的其他方法...
谢谢
我相信你的目标如下。
- 您想从网站检索网站图标。
- 您想使用以下示例 URL。
https://t2.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://yahoo.com&size=64
- 从
I need to list website names along with their favicons and metadata like site description, etc.
,您想要使用 Google Apps 脚本检索网站的图标、标题和描述。
示例脚本 1:
当你的https://t2.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://yahoo.com&size=64
的URL被使用时,下面的示例脚本怎么样?请将以下脚本复制并粘贴到 Google Apps 脚本的脚本编辑器中。并且,运行 samoke1
在脚本编辑器中。
function sample1() {
const uri = 'https://t2.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://yahoo.com&size=64';
const blob = UrlFetchApp.fetch(encodeURI(uri)).getBlob();
DriveApp.createFile(blob);
}
- 当此脚本为 运行 时,将检索网站图标并将其作为文件保存到 Google 驱动器的根文件夹中。
- 当我看到 URL 时,似乎将 favicon 作为图像数据检索。
示例脚本 2:
当网站的图标、标题和描述被检索时,下面的示例脚本怎么样?
function sample2() {
const uri = 'https://yahoo.com'; // Please set the URL.
const obj = { title: "", description: "", faviconUrl: "" };
const res = UrlFetchApp.fetch(encodeURI(uri));
const html = res.getContentText();
const title = html.match(/<title>(.+?)<\/title>/i);
if (title || title.length > 1) {
obj.title = title[1];
}
const description = html.match(/<meta.+name\="description".+>/i);
if (description) {
const d = description[0].match(/content\="(.+)"/i);
if (d && d.length > 1) {
obj.description = d[1];
}
}
const faviconUrl = html.match(/rel="icon".+?href\="(.+?)"/i);
if (faviconUrl && faviconUrl.length > 1) {
obj.faviconUrl = faviconUrl[1];
}
console.log(obj);
}
当这个脚本为运行时,可以在日志中看到如下值
{
"title":"Yahoo | Mail, Weather, Search, Politics, News, Finance, Sports & Videos",
"description":"Latest news coverage, email, free stock quotes, live scores and video are just the beginning. Discover more every day at Yahoo!",
"faviconUrl":"https://s.yimg.com/cv/apiv2/default/icons/favicon_y19_32x32_custom.svg"
}
参考:
我正在检查是否可以使用 gstatic 从网站上抓取 favicon。下面将获取网站 Favicon:
https://t2.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://yahoo.com&size=64
我知道 URL 参数可能不适合一般用途,只是检查是否有人知道这可能被记录在哪里?
更新:我刚刚开始在 Google App Script 上构建应用程序。我需要列出网站名称及其网站图标和网站描述等元数据。目前唯一的方法是阅读网页并使用 beautifulSoup 解析页面,然后找到网站图标。我遇到了上面的link,它会直接给我图标!但我想更好地理解它并尝试找到有关 gstatic 的 URL 参数的更多信息。 我也愿意接受从 Google App Script 抓取网站的其他方法...
谢谢
我相信你的目标如下。
- 您想从网站检索网站图标。
- 您想使用以下示例 URL。
https://t2.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://yahoo.com&size=64
- 从
I need to list website names along with their favicons and metadata like site description, etc.
,您想要使用 Google Apps 脚本检索网站的图标、标题和描述。
示例脚本 1:
当你的https://t2.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://yahoo.com&size=64
的URL被使用时,下面的示例脚本怎么样?请将以下脚本复制并粘贴到 Google Apps 脚本的脚本编辑器中。并且,运行 samoke1
在脚本编辑器中。
function sample1() {
const uri = 'https://t2.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=https://yahoo.com&size=64';
const blob = UrlFetchApp.fetch(encodeURI(uri)).getBlob();
DriveApp.createFile(blob);
}
- 当此脚本为 运行 时,将检索网站图标并将其作为文件保存到 Google 驱动器的根文件夹中。
- 当我看到 URL 时,似乎将 favicon 作为图像数据检索。
示例脚本 2:
当网站的图标、标题和描述被检索时,下面的示例脚本怎么样?
function sample2() {
const uri = 'https://yahoo.com'; // Please set the URL.
const obj = { title: "", description: "", faviconUrl: "" };
const res = UrlFetchApp.fetch(encodeURI(uri));
const html = res.getContentText();
const title = html.match(/<title>(.+?)<\/title>/i);
if (title || title.length > 1) {
obj.title = title[1];
}
const description = html.match(/<meta.+name\="description".+>/i);
if (description) {
const d = description[0].match(/content\="(.+)"/i);
if (d && d.length > 1) {
obj.description = d[1];
}
}
const faviconUrl = html.match(/rel="icon".+?href\="(.+?)"/i);
if (faviconUrl && faviconUrl.length > 1) {
obj.faviconUrl = faviconUrl[1];
}
console.log(obj);
}
当这个脚本为运行时,可以在日志中看到如下值
{ "title":"Yahoo | Mail, Weather, Search, Politics, News, Finance, Sports & Videos", "description":"Latest news coverage, email, free stock quotes, live scores and video are just the beginning. Discover more every day at Yahoo!", "faviconUrl":"https://s.yimg.com/cv/apiv2/default/icons/favicon_y19_32x32_custom.svg" }