捕获和转换Web的工具

如何从屏幕截图中删除Cookie通知

Cookie 通知删除

根据 GDPR 和各种其他隐私法,网页内的 cookie 通知已变得非常常见,但这些通知通常不希望出现在屏幕截图中。

GrabzIt 可以自动删除网页中出现的常见 Cookie 通知,为此,只需打开无 Cookie 通知功能,如下所示。

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.NoCookieNotifications = true;

grabzIt.URLToImage("http://www.spacex.com", options);
grabzIt.Save("http://www.mywebsite.com/Home/Handler");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setNoCookieNotifications(true);

grabzIt.URLToImage("http://www.spacex.com", options);
grabzIt.Save("http://www.mywebsite.com/handler");
<script src="https://cdn.jsdelivr.net/npm/@grabzit/js@3.5.2/grabzit.min.js"></script>
<script>
GrabzIt("Sign in to view your Application Key").ConvertURL("http://www.spacex.com", {"nonotify":1}).Create();
</script>
var grabzit = require('grabzit');

var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret");

client.url_to_image("http://www.spacex.com", {"noCookieNotifications":true});
client.save("http://www.example.com/handler", function (error, id){
    if (error != null){
        throw error;
    }
}); 	
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->noCookieNotifications(1);
$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->Save("http://www.mywebsite.com/handler.pl");
$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = new \GrabzIt\GrabzItImageOptions();
$options->setNoCookieNotifications(true);

$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->Save("http://www.mywebsite.com/handler.php");
grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.noCookieNotifications = True

grabzIt.URLToImage("http://www.spacex.com", options)
grabzIt.Save("http://www.mywebsite.com/handler.py")
https://api.grabz.it/services/convert?key=Sign in to view your Application Key&nonotify=1&format=jpg&url=https%3A%2F%2Fspacex.com%2F
grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.noCookieNotifications = true

grabzIt.url_to_image("http://www.spacex.com", options)
grabzIt.save("http://www.mywebsite.com/handler/index")

如果 cookie 通知不是 GrabzIt 可以删除的常见类型之一,我们可以使用以下四种其他技术来尝试删除它们。

使用 cookie 隐藏通知

使用浏览器的开发者工具查看接受 cookie 通知时是否添加了 cookie。 如果有 将其添加到 GrabzIt,这将用于以后的所有屏幕截图,从而抑制通知。 或者启用 用户cookie行为 模式,它将自动记录捕获期间遇到的所有永久浏览器 cookie。

隐藏 HTML 元素

另一种技术是 隐藏不需要的页面元素。 为此,您需要找到 cookie 通知元素的 CSS 选择器,然后将其传递给 GrabzIt。

创建来自非欧盟国家的捕获

下一个选项是设置 国家参数美国,由于该法律仅与欧盟相关,如果您从美国截取屏幕截图,某些网站将不会显示通知。

单击通知弹出按钮

您实际上可以通过单击通知弹出窗口接受按钮并关闭弹出窗口来模仿人类行为。 为此,请通过 CSS选择器 按钮到 API 的点击选项。

使用搜索引擎用户代理

最后你可以尝试设置 requestAs 搜索引擎的参数。 因为某些网站如果认为是搜索引擎正在查看该网站,则不会显示 cookie 通知。