簡體   English   中英

完全加載后導入HTML頁面(以進行解析)

[英]Import HTML page after full loading (to parsing)

我想按URL閱讀和解析頁面。 我動態創建的網址。 https://search.aviasales.ru/MOW2405CHI30061 (城市從-驅逐日期-城市到-日期到-數量)。 但是它的頁面沒有完全加載。 在最初的幾秒鍾內僅加載一部分。 如果我嘗試像這樣加載它:

        System.Net.WebClient web = new System.Net.WebClient();
        web.Encoding = UTF8Encoding.UTF8;

        string str = web.DownloadString("https://search.aviasales.ru/MOW2405ATH30061");
        HtmlDocument doc = new HtmlDocument();
        doc.LoadHtml(str);

我得到頁面的一部分。 但是我需要其他部分。 幾個時間(角度腳本或局部視圖)后,它將部分加載。 如何加載完整頁面?

該頁面使用AJAX加載數據,因此您的代碼將只為您提供基本的容器HTML,而不是您想要的位。

您必須研究主頁的源代碼,閱讀Javascript並弄清楚它進行了哪些AJAX調用來獲取數據。 然后,您需要調用這些URL並解析數據。

這就是所謂的“屏幕刮擦”,有很多陷阱。 值得一讀,並確保您知道自己要輸入的內容,因為您可以投入大量工作來抓取他們的頁面,而只是讓他們進行簡單的更改就完全破壞了您的代碼。

還值得檢查一下他們是否具有可以調用的API,因為這將被記錄在案並且可以更改。 您嘗試執行此操作的方法非常脆弱。

暫無
暫無

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

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