簡體   English   中英

從 web 頁面中獲取 javascript 變量,無需交互/粗心大意

[英]Get a javascript variable from a web page without interaction/heedlessly

下午好,我們希望從網頁中獲取 javascript 變量,我們通常能夠在 Chrome DevTools 中檢索打字app

但是,我們希望無頭地實現這一點,因為它必須在眾多應用程序上執行。

我們的想法:

  • 在頁面上使用 Puppeteer 實例到 go,鍵入命令並返回變量,這有效,但非常耗資源。

  • 對頁面使用 GET/POST 請求試圖注入 JS 命令,但我們沒有成功。

然后我們想知道是否會有更簡單的解決方案,例如可以提取變量的特殊 API? 目標是在沒有人工交互的情況下自動執行此過程。

謝謝你的幫助!

您可以將 Chrome 嵌入到您的應用程序中並對其進行檢測。 它將是無頭的。
我們過去曾使用這種方法從 PowerPoint Online 復制內容。

我們使用 .NET 來執行此操作,因此使用了 CEFSharp。

您的問題與其說是關於 JS API(因為該網頁不是您可以編輯的,您只能請求它),不如說是關於網絡爬蟲/瀏覽器自動化。

您必須添加詳細信息才能獲得明確的答案,但我看到兩種情況:

  • 該網站主動檢查人類瀏覽的證據(例如,它位於 CloudFlare 后面並已請求此選項); 或者腳本在很大程度上取決於是否有可用的瀏覽器執行環境。 在這種情況下,最簡單的選擇是使瀏覽器自動化,因為無頭選項必須正確處理許多事情才能欺騙服務器或腳本。 我會使用空手道,它比 selenium 更容易,並且可以執行瀏覽器內腳本 它寫在 Java 中,但你可以在外部執行它並只讀它的報告。
  • 該網站不會檢查此類證據,腳本也不需要瀏覽器執行環境。 然后你可以簡單地在本地下載所有需要的東西,並嘗試臨時安裝 JS 使其在任何 JS 環境中執行。 根據您的帖子,這失敗了; 但除非你能描述它是如何失敗的,否則它是不可能提供幫助的。 這個選項可以是無頭的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM