C# 用Webbrowser 訪問動態頁面


https://www.cnblogs.com/xuelan/p/11733153.html 

webbrowser錯誤匯總
https://blog.csdn.net/ZslLoveMiwa/article/details/80616399
public class WebBrowserCrawler { // WebBrowser private WebBrowser _WebBrowder; //最后結果 private string _Result { get; set; } //網址 private string _Path { get; set; } /// <summary> /// 對外公開的Method /// </summary> www.it165.net /// <param name="url">URL Path</param> /// <returns></returns> public string GetReult(string url) { _Path = url; var mThread = new Thread(FatchDataToResult); mThread.SetApartmentState(ApartmentState.STA); mThread.Start(); mThread.Join(); return _Result; } /// <summary> /// Call _WebBrowder 抓取資料 /// For thread Call /// </summary> private void FatchDataToResult() { _WebBrowder = new WebBrowser(); _WebBrowder.Navigate(_Path); while (_WebBrowder.ReadyState != WebBrowserReadyState.Complete) { Application.DoEvents(); } //如果不加下面綠色結果能出來 可以忽略 System.Timers.Timer timer = new System.Timers.Timer(); var isComplete = false; timer.Elapsed += new System.Timers.ElapsedEventHandler((sender, e) => { //加載完畢 isComplete = true; timer.Stop(); }); timer.Interval = 1000 * 5; timer.Start(); //繼續等待 5s,等待js加載完 while (!isComplete) Application.DoEvents(); _Result = _WebBrowder.Document.Body.OuterHtml; _WebBrowder.Dispose(); } //結束后回填 } class program { static void Main(string[] args) { WebBrowserCrawler webBrowserCrawler = new WebBrowserCrawler(); string tt=webBrowserCrawler.GetReult("https://rd5.zhaopin.com/resume/email/open?s=be5801f663e64e64894a696fc29a74d5"); Console.ReadKey(); } }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM