Alla aktier + uppdattimes
This commit is contained in:
@ -1,9 +1,11 @@
|
||||
using OpenQA.Selenium;
|
||||
using Newtonsoft.Json;
|
||||
using OpenQA.Selenium;
|
||||
using OpenQA.Selenium.Chrome;
|
||||
using StockDal.Interface;
|
||||
using StockDomain;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
@ -13,10 +15,14 @@ namespace StockDal
|
||||
public class StockMarketRepository : IStockMarketRepository
|
||||
{
|
||||
public Dictionary<string, DiTraderStockRow> StockMarketList { get; set; }
|
||||
|
||||
public List<DiTraderStockRow> DumpObjects { get; set; } = new List<DiTraderStockRow>();
|
||||
public DiTraderStockRow SaveRow { get; set; }
|
||||
public StringBuilder TextResults { get; set; }
|
||||
public bool ViewBrowser { get; set; }
|
||||
|
||||
|
||||
|
||||
public IWebDriver driver;
|
||||
|
||||
public StockMarketRepository()
|
||||
@ -27,7 +33,6 @@ namespace StockDal
|
||||
private void Find_Data()
|
||||
{
|
||||
TextResults = new StringBuilder();
|
||||
StockMarketList = new Dictionary<string, DiTraderStockRow>();
|
||||
IList<IWebElement> searchElements = driver.FindElements(By.TagName("tbody"));
|
||||
foreach (IWebElement i in searchElements)
|
||||
{
|
||||
@ -60,8 +65,16 @@ namespace StockDal
|
||||
|
||||
TextResults.Append("\r\n");
|
||||
}
|
||||
var oxe = StockMarketList;
|
||||
|
||||
// var oxe = StockMarketList;
|
||||
}
|
||||
|
||||
private void SaveLogging()
|
||||
{
|
||||
var output = JsonConvert.SerializeObject(DumpObjects, Formatting.Indented);
|
||||
File.WriteAllText($"D:\\TimCoDemos\\DemoLogs\\Log{DateTime.Now.ToShortDateString()}.txt",output);
|
||||
}
|
||||
|
||||
private void AddValueToListRow(int pos, string value)
|
||||
{
|
||||
switch (pos)
|
||||
@ -115,7 +128,7 @@ namespace StockDal
|
||||
}
|
||||
case 9:
|
||||
{
|
||||
SaveRow.TimeOfDay = TimeSpan.Parse(value);
|
||||
SaveRow.TimeOfDay = value==""?TimeSpan.Parse("00:01"): TimeSpan.Parse(value);
|
||||
//StockMarketList.Add(SaveRow.StockName, SaveRow);
|
||||
try
|
||||
{
|
||||
@ -123,7 +136,15 @@ namespace StockDal
|
||||
}
|
||||
catch (ArgumentException ae)
|
||||
{
|
||||
StockMarketList.Add(SaveRow.StockName + "-2", SaveRow);
|
||||
try
|
||||
{
|
||||
StockMarketList.Add(SaveRow.StockName + "-2", SaveRow);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
DumpObjects.Add(SaveRow);
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -132,7 +153,7 @@ namespace StockDal
|
||||
}
|
||||
}
|
||||
|
||||
private void OpenBrowser()
|
||||
private void OpenBrowser(bool burl2 = false)
|
||||
{
|
||||
var driverService = ChromeDriverService.CreateDefaultService();
|
||||
driverService.HideCommandPromptWindow = true;
|
||||
@ -152,9 +173,10 @@ namespace StockDal
|
||||
{
|
||||
//var url0 = "https://money.cnn.com/data/hotstocks/index.html";
|
||||
var url = "https://trader.di.se/index.php/stocklist/index/2055?list=7126";
|
||||
var url2 = "https://trader.di.se/index.php/stocklist/index/2055?list=7116";
|
||||
//var url1 = "https://www.finansportalen.se/aktiekurser/";
|
||||
driver.Navigate().GoToUrl(burl2 ? url2 : url);
|
||||
|
||||
driver.Navigate().GoToUrl(url);
|
||||
}
|
||||
catch
|
||||
{
|
||||
@ -165,13 +187,22 @@ namespace StockDal
|
||||
|
||||
public void LoadStockMarketList()
|
||||
{
|
||||
StockMarketList = new Dictionary<string, DiTraderStockRow>();
|
||||
DumpObjects = new List<DiTraderStockRow>();
|
||||
OpenBrowser();
|
||||
Find_Data();
|
||||
OpenBrowser(true);
|
||||
Find_Data();
|
||||
if (DumpObjects.Any())
|
||||
{
|
||||
SaveLogging();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void LoadStockMarketList(bool viewBrowser)
|
||||
{
|
||||
StockMarketList = new Dictionary<string, DiTraderStockRow>();
|
||||
ViewBrowser = viewBrowser;
|
||||
OpenBrowser();
|
||||
Find_Data();
|
||||
@ -179,6 +210,7 @@ namespace StockDal
|
||||
|
||||
public void RefreshMarketList()
|
||||
{
|
||||
StockMarketList = new Dictionary<string, DiTraderStockRow>();
|
||||
driver.Navigate().Refresh();
|
||||
Find_Data();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user