捕獲和轉換Web的工具

如何禁用JavaScript內聯彈出窗口?

某些網頁包含不需要的內聯JavaScript彈出窗口,這些彈出窗口會顯示在我們的 蜜蜂 - 在線截圖工具。 隱藏這些彈出窗口的最可靠方法是指定要隱藏的彈出窗口的HTML元素。 以下是我們要刪除的嵌入式彈出窗口的HTML代碼段。

<div class="ArevicoModal-bg ArevicoModal-iframe" style="display: block;"></div>
<div class="ArevicoModal ArevicoModal-iframe" style="display: block;">
 <div class="ArevicoModal-content">
  <span class="ArevicoModal-close-icon ArevicoModal-close"></span>
  <div id="arvlbdata" style="overflow:visible;width:400px;height:250px;" class="ArevicoModal-inner">
   <h2>Sign up now!!</h2>
  </div>
 </div>
</div>

因此,要刪除此彈出窗口,我們需要使用該元素隱藏所有阻止頁面的彈出窗口元素 CSS選擇器。 在這種情況下 .ArevicoModal-bg - .ArevicoModal。 您可以使用網絡瀏覽器的開發人員工具找出需要刪除的HTML元素。 隱藏一個例子 .ArevicoModal-bg - .ArevicoModal 下面顯示了每個API的HTML元素。

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
ImageOptions options = new ImageOptions();
options.HideElement = ".ArevicoModal-bg,.ArevicoModal";
grabzIt.URLToImage("http://www.spacex.com", options);
grabzIt.SaveTo("spacex.jpg");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
ImageOptions options = new ImageOptions();
options.hideElement(".ArevicoModal-bg,.ArevicoModal");
grabzIt.URLToImage("http://www.spacex.com", options);
grabzIt.SaveTo("spacex.jpg");
<script src="https://cdn.jsdelivr.net/npm/@grabzit/js@3.4.7/grabzit.min.js"></script>
<script>
GrabzIt("Sign in to view your Application Key").ConvertURL("http://www.spacex.com", 
	{"hide", ".ArevicoModal-bg,.ArevicoModal"}).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", 
	{"hideElement", ".ArevicoModal-bg,.ArevicoModal"});
client.save_to("spacex.jpg", 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->hideElement(".ArevicoModal-bg,.ArevicoModal");
$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->SaveTo("spacex.jpg");
$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$options = new \GrabzIt\GrabzItImageOptions();
$options->setHideElement(".ArevicoModal-bg,.ArevicoModal");
$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->SaveTo("spacex.jpg");
grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
options = GrabzItImageOptions.GrabzItImageOptions()
options.hideElement = ".ArevicoModal-bg,.ArevicoModal"
grabzIt.URLToImage("http://www.spacex.com", options)
grabzIt.SaveTo("spacex.jpg")
grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")
options = GrabzIt::ImageOptions.new()
options.hideElement = ".ArevicoModal-bg,.ArevicoModal"
grabzIt.url_to_image("http://www.spacex.com", options)
grabzIt.save_to("spacex.jpg")

其他技術

某些彈出窗口由Cookie控制,因此,如果您為該域設置了正確的Cookie值,則該彈出窗口可能不再顯示。 這可以是 手動完成 或通過啟用 用戶Cookie行為 模式。

為此,請訪問網頁並打開瀏覽器的開發人員工具,以便您可以查看網頁上存在哪些cookie。 現在關閉彈出窗口。 如果出現新的cookie,請刷新頁面。 如果彈出窗口不再顯示,請複制顯示的Cookie的詳細信息,並將其添加到您的 自定義Cookie。 但是,最好給它一個較長的有效期,也許是10年,這樣就不會刪除Cookie。

另一個可能的解決方案是使用 搜索引擎 用戶代理,通過設置“ request as”參數。 根據網站的編寫方式,可能會導致彈出窗口不顯示。