亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
Selenium&EmguCV實現爬蟲圖片識別
作者:網絡轉載 發布時間:[ 2015/4/28 11:13:00 ] 推薦標簽:Selenium 圖片識別 爬蟲

  概述
  爬蟲需要抓取網站價格,與一般抓取網頁區別的是抓取內容是通過AJAX加載,并且價格是通過CSS背景圖片顯示的。

  每一個數字對應一個樣式,如'p_h57_5'
  .p_h57_5 {
  background: url('http://pic.c-ctrip.com/priceblur/h57/3713de5c594648529f39d031243966dd.gif') no-repeat -590px;
  padding: 0 6px;
  font-size: 18px;
  }
  數字對應的樣式和對應的backgroundimg都是動態改變的,需要獲取到每一個房型的房價。雖然后來有了其它渠道獲取房價,這里記錄一下用Selenium&Emgu抓取的方式。
  流程:
  1.Selenium訪問網址
  2.全屏截圖
  3.Selenium選擇器獲取房型等信息
  4.Selenium選擇器獲取價格DOM元素,計算出價格元素的相對位置,截取價格圖片,使用Emgu識別價格并且輸出
  實現
```C#
static void Main(string[] args)
{
//訪問網址
ChromeOptions options = new ChromeOptions();
options.AddArguments("--start-maximized --disable-popup-blocking");
var driver = new ChromeDriver(options);
driver.Navigate().GoToUrl("http://hotels.ctrip.com/hotel/992765.html");
try
{
new WebDriverWait(driver, TimeSpan.FromSeconds(1)).Until(
ExpectedConditions.ElementExists((By.ClassName("htl_room_table")))); //表示已加載完畢
}
finally
{
}
//刪除價格的¥符號
ReadOnlyCollection<IWebElement> elementsList = driver.FindElementsByCssSelector("tr[expand]");
driver.ExecuteScript(@"
var arr =  document.getElementsByTagName('dfn');
for(var i=0;i<arr.length;i++){
arr[i].style.display = 'none';
}
");
//全屏截圖
var image2 = GetEntereScreenshot(driver);
image2.Save(@"Z:111.jpg");
//輸出
Console.WriteLine("{0,-20}{1,-20}{2,-20}", "房型", "類型", "房價");
foreach (IWebElement _ in elementsList)
{
//var image = _.Snapshot();
//image.Save(@"Z:" + Guid.NewGuid() + ".jpg");
//var str = ORC_((Bitmap)image);
var roomType = "";
try
{
roomType = _.FindElement(By.CssSelector(".room_unfold")).Text;
}
catch (Exception)
{
}
var roomTypeText = regRoomType.Match(roomType);
var roomTypeName = _.FindElement(By.CssSelector("span.room_type_name")).Text;
//價格元素生成圖片
var image = _.FindElement(By.CssSelector("span.base_price")).SnapshotV2(image2);
//識別
var price = ORC_((Bitmap)image);
Console.WriteLine("{0,-20}{1,-20}{2,-20}", roomTypeText.Value, roomTypeName, price);
}
Console.Read();
}
```
圖片識別方法
```C#
static Program()
{
ocr.SetVariable("tesseditchar_whitelist", "0123456789");
}
private static Tesseract _ocr = new Tesseract(@"C:Emguemgucv-windows-universal-cuda 2.9.0.1922in essdata", "eng", Tesseract.OcrEngineMode.OEM_TESSERACT_CUBE_COMBINED);
//傳入圖片進行識別
public static string ORC_(Bitmap img)
{
//""標示OCR識別調用失敗
string re = "";
if (img == null)
return re;
else
{
Bgr drawColor = new Bgr(Color.Blue);
try
{
Image<Bgr, Byte> image = new Image<Bgr, byte>(img);
using (Image<Gray, byte> gray = image.Convert<Gray, Byte>())
{
_ocr.Recognize(gray);
Tesseract.Charactor[] charactors = _ocr.GetCharactors();
foreach (Tesseract.Charactor c in charactors)
{
image.Draw(c.Region, drawColor, 1);
}
re = _ocr.GetText();
}
return re;
}
catch (Exception ex)
{
return re;
}
}
}
```

上一頁12下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 亚洲小视频在线播放 | 波多野结衣久久精品免费播放 | 最新国产一区二区精品久久 | 青青草国产三级精品三级 | 不卡视频国产 | 欧美成人精品一区二三区在线观看 | 日本69xxx18hd| 精品久久久久久亚洲精品 | 欧日韩美香蕉在线观看 | 亚洲欧美另类日韩 | 国产精品一区在线观看 | 免费深夜福利 | 久久亚洲欧美综合激情一区 | 午夜片在线观看 | 日本va视频| 久久免费网 | 日产免费自线一二 | 成人欧美一区在线视频在线观看 | 国产精品2020 | 成a人v欧美综合天堂 | 欧美日韩国产码高清综合人成 | 五月婷在线视频 | 最近2019年中文字幕一页 | 精品国产一区二区三区四 | 日韩色图在线观看 | 蝌蚪网在线视频 | 天天做天天玩天天爽天天 | www.一级片.com| 精品一区二区三区在线视频观看 | 日韩欧美一区二区三区久久 | 成人在线一区二区 | 日日噜噜噜夜夜爽爽狠狠 | a级精品九九九大片免费看 a级精品国产片在线观看 | 在线日韩欧美 | 久久天天躁夜夜躁2019 | 亚洲国产剧情在线精品视 | 99re这里| 狠狠操夜夜爱 | 成人短视频在线免费观看 | 免费在线视频日本 | 在线看的网站 |