国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#使用Selenium+PhantomJS抓取數據

2020-01-24 00:44:55
字體:
來源:轉載
供稿:網友

手頭項目需要抓取一個用js渲染出來的網站中的數據。使用常用的httpclient抓回來的頁面是沒有數據。上網百度了一下,大家推薦的方案是使用PhantomJS。PhantomJS是一個沒有界面的webkit瀏覽器,能夠和瀏覽器效果一致的使用js渲染頁面。Selenium是一個web測試框架。使用Selenium來操作PhantomJS絕配。但是網上的例子多是Python的。無奈,下載了python按照教程搞了一下,卡在了Selenium的導入問題上。遂放棄,還是用自己慣用的c#吧,就不信c#上沒有。經過半個小時的折騰,搞定(python折騰了一個小時)。記錄下這篇博文,讓我等搞c#的新手能用上PhantomJS。

第一步:打開visual studio 2017 新建一個控制臺項目,打開nuget包管理器。

第二部:搜索Selenium,安裝Selenium.WebDriver。注意:如果要使用代理的話最好安裝3.0.0版本。

第三步:寫下如下圖所示的代碼。但是執行的時候會報錯。原因是找不到PhantomJS.exe。這時候可以去下載一個,也可以繼續看第四步。

using OpenQA.Selenium;using OpenQA.Selenium.PhantomJS;using System;namespace ConsoleApp1{ class Program { static void Main(string[] args) {  var url = "http://www.baidu.com";  IWebDriver driver = new PhantomJSDriver(GetPhantomJSDriverService());  driver.Navigate().GoToUrl(url);  Console.WriteLine(driver.PageSource);  Console.Read(); } private static PhantomJSDriverService GetPhantomJSDriverService() {  PhantomJSDriverService pds = PhantomJSDriverService.CreateDefaultService();  //設置代理服務器地址  //pds.Proxy = $"{ip}:{port}";   //設置代理服務器認證信息  //pds.ProxyAuthentication = GetProxyAuthorization();  return pds; } }}

第四步:打開nuget安裝Selenium.PhantomJS.WebDriver包。

第五步:運行。可以看到phantomjs.exe被自動下載了。

好了,這樣就可以開始你的數據抓取大業了。

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 安福县| 汕头市| 嘉荫县| 宁明县| 湖北省| 盐山县| 临清市| 太仓市| 开平市| 芷江| 景洪市| 柯坪县| 石嘴山市| 屏东市| 巧家县| 鄢陵县| 德格县| 绥阳县| 长治县| 环江| 平原县| 信宜市| 德昌县| 唐海县| 观塘区| 东海县| 开平市| 公安县| 郸城县| 宜都市| 丽水市| 上高县| 长子县| 崇仁县| 望江县| 旅游| 镇江市| 马山县| 田林县| 班戈县| 卓资县|