91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在c#中利用Selenium爬取數據

發布時間:2021-01-15 15:01:34 來源:億速云 閱讀:661 作者:Leah 欄目:開發技術

怎么在c#中利用Selenium爬取數據?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

ChromeOptions options = null;
      IWebDriver driver = null;
      try
      {
        options = new ChromeOptions();
        options.AddArguments("--ignore-certificate-errors");
        options.AddArguments("--ignore-ssl-errors");

        // options.AddExcludedArgument("enable-automation");
        // options.AddAdditionalCapability("useAutomationExtension", false);

        var listCookie = CookieHelp.GetCookie();
        if (listCookie != null)
        {
          // options.AddArgument("headless");
        }

        // string ss = @"{ ""source"": ""Object.defineProperty(navigator, 'webdriver', { get: () => undefined})""}";
        //  options.AddUserProfilePreference("Page.addScriptToEvaluateOnNewDocument", new ssss() { source = " Object.defineProperty(navigator, 'webdriver', {  get: () => undefined }) " });

        ChromeDriverService service = ChromeDriverService.CreateDefaultService(System.Environment.CurrentDirectory);
        service.HideCommandPromptWindow = true;
        driver = new ChromeDriver(service, options, TimeSpan.FromSeconds(120));

        ////session.Page.AddScriptToEvaluateOnNewDocument(new OpenQA.Selenium.DevTools.Page.AddScriptToEvaluateOnNewDocumentCommandSettings()
        ////{
        ////  Source = @"Object.defineProperty(navigator, 'webdriver', { get: () => undefined })"
        ////}
        //// );

怎么在c#中利用Selenium爬取數據

所以,如果網站通過js代碼獲取這個參數,返回值為undefined說明是正常的瀏覽器,返回true說明用的是Selenium模擬瀏覽器。

解決辦法

那么對于這種情況,在爬蟲開發的過程中如何防止這個參數告訴網站你在模擬瀏覽器呢?執行對應的js,改掉它的值。

 IJavaScriptExecutor js = (IJavaScriptExecutor)driver;
 string returnjs = (string)js.ExecuteScript("Object.defineProperties(navigator, {webdriver:{get:()=>undefined}});");

運行效果

怎么在c#中利用Selenium爬取數據

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

潼关县| 黄平县| 凤阳县| 多伦县| 温宿县| 扶绥县| 临高县| 扬州市| 平利县| 平远县| 同江市| 工布江达县| 新丰县| 江西省| 芒康县| 平邑县| 昌图县| 延安市| 巨野县| 宁津县| 武功县| 淳安县| 临清市| 鄂托克前旗| 天长市| 汉中市| 景洪市| 颍上县| 游戏| 康保县| 德州市| 榆中县| 北川| 巫山县| 杭州市| 芮城县| 察隅县| 金坛市| 保山市| 明水县| 汉川市|