Cleared app from old code, by commenting out

Will do another commit when all comments are taken away
This commit is contained in:
2022-02-21 17:16:57 +01:00
parent aac79f946c
commit 3b0809c48d
7 changed files with 230 additions and 178 deletions

View File

@ -18,14 +18,15 @@ using Helpers;
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 bool ViewBrowser { get; set; }
public IWebDriver driver;
private readonly IStockPersonConnect _stockPersonConnect;
@ -39,53 +40,53 @@ namespace StockDal
TestSettings testSettings,
IStockScrapePage scrapePage)
{
ViewBrowser = false;
// ViewBrowser = false;
_stockPersonConnect = stockPersonConnect;
_stockRepository = stockRepository;
_testSettings = testSettings;
_scrapePage = scrapePage;
}
private void Find_Data()
{
TextResults = new StringBuilder();
IList<IWebElement> searchElements = driver.FindElements(By.TagName("tbody"));
foreach (IWebElement i in searchElements)
{
//private void Find_Data()
//{
// TextResults = new StringBuilder();
// IList<IWebElement> searchElements = driver.FindElements(By.TagName("tbody"));
// foreach (IWebElement i in searchElements)
// {
HtmlAgilityPack.HtmlDocument htmlDocument = new HtmlAgilityPack.HtmlDocument();
var text = i.GetAttribute("innerHTML");
htmlDocument.LoadHtml(text);
var inputs = htmlDocument.DocumentNode.Descendants("tr").ToList();
foreach (var items in inputs)
{
HtmlAgilityPack.HtmlDocument htmlDocument1 = new HtmlAgilityPack.HtmlDocument();
htmlDocument1.LoadHtml(items.InnerHtml);
var tds = htmlDocument1.DocumentNode.Descendants("td").ToList();
var appendText = "";
var fNr = 0;
foreach (var item in tds)
{
var intext = item.InnerText.Replace("\r\n", "");
appendText += appendText.Length == 0 ? intext : " " + intext;
if (tds.Count == 10)
{
AddValueToListRow(fNr++, intext);
}
}
if (!string.IsNullOrEmpty(appendText))
{
TextResults.Append(appendText + "\r\n");
}
htmlDocument1 = null;
}
htmlDocument = null;
// HtmlAgilityPack.HtmlDocument htmlDocument = new HtmlAgilityPack.HtmlDocument();
// var text = i.GetAttribute("innerHTML");
// htmlDocument.LoadHtml(text);
// var inputs = htmlDocument.DocumentNode.Descendants("tr").ToList();
// foreach (var items in inputs)
// {
// HtmlAgilityPack.HtmlDocument htmlDocument1 = new HtmlAgilityPack.HtmlDocument();
// htmlDocument1.LoadHtml(items.InnerHtml);
// var tds = htmlDocument1.DocumentNode.Descendants("td").ToList();
// var appendText = "";
// var fNr = 0;
// foreach (var item in tds)
// {
// var intext = item.InnerText.Replace("\r\n", "");
// appendText += appendText.Length == 0 ? intext : " " + intext;
// if (tds.Count == 10)
// {
// AddValueToListRow(fNr++, intext);
// }
// }
// if (!string.IsNullOrEmpty(appendText))
// {
// TextResults.Append(appendText + "\r\n");
// }
// htmlDocument1 = null;
// }
// htmlDocument = null;
TextResults.Append("\r\n");
}
// TextResults.Append("\r\n");
// }
// var oxe = StockMarketList;
}
// // var oxe = StockMarketList;
//}
private void SaveLogging()
{
@ -100,122 +101,122 @@ namespace StockDal
File.WriteAllText($"{programPath}\\Loggings\\Log{DateTime.Now.ToShortDateString()}.txt", output);
}
private void AddValueToListRow(int pos, string value)
{
switch (pos)
{
case 0:
{
SaveRow = new DiTraderStockRow();
SaveRow.StockName = value;
break;
}
case 1:
{
SaveRow.ProcChange = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
break;
}
case 2:
{
SaveRow.RealChange = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
break;
}
case 3:
{
SaveRow.BuyPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
break;
}
case 4:
{
SaveRow.SellPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
break;
}
case 5:
{
SaveRow.LatestPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
break;
}
case 6:
{
SaveRow.HighestPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
break;
}
case 7:
{
SaveRow.LowestPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
break;
}
case 8:
{
//private void AddValueToListRow(int pos, string value)
//{
// switch (pos)
// {
// case 0:
// {
// SaveRow = new DiTraderStockRow();
// SaveRow.StockName = value;
// break;
// }
// case 1:
// {
// SaveRow.ProcChange = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
// break;
// }
// case 2:
// {
// SaveRow.RealChange = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
// break;
// }
// case 3:
// {
// SaveRow.BuyPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
// break;
// }
// case 4:
// {
// SaveRow.SellPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
// break;
// }
// case 5:
// {
// SaveRow.LatestPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
// break;
// }
// case 6:
// {
// SaveRow.HighestPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
// break;
// }
// case 7:
// {
// SaveRow.LowestPrice = string.IsNullOrWhiteSpace(value) ? 0 : decimal.Parse(value);
// break;
// }
// case 8:
// {
SaveRow.Volume = string.IsNullOrWhiteSpace(value) ? 0 : long.Parse(value.Replace(" ", ""));
break;
}
case 9:
{
SaveRow.TimeOfDay = value == "" ? TimeSpan.Parse("00:01") : TimeSpan.Parse(value);
//StockMarketList.Add(SaveRow.StockName, SaveRow);
try
{
StockMarketList.Add(SaveRow.StockName, SaveRow);
}
catch (ArgumentException)
{
try
{
StockMarketList.Add(SaveRow.StockName + "-2", SaveRow);
}
catch (Exception)
{
DumpObjects.Add(SaveRow);
}
// SaveRow.Volume = string.IsNullOrWhiteSpace(value) ? 0 : long.Parse(value.Replace(" ", ""));
// break;
// }
// case 9:
// {
// SaveRow.TimeOfDay = value == "" ? TimeSpan.Parse("00:01") : TimeSpan.Parse(value);
// //StockMarketList.Add(SaveRow.StockName, SaveRow);
// try
// {
// StockMarketList.Add(SaveRow.StockName, SaveRow);
// }
// catch (ArgumentException)
// {
// try
// {
// StockMarketList.Add(SaveRow.StockName + "-2", SaveRow);
// }
// catch (Exception)
// {
// DumpObjects.Add(SaveRow);
// }
}
break;
}
default:
break;
}
}
// }
// break;
// }
// default:
// break;
// }
//}
private void OpenBrowser(bool? burl2 = false)
{
var driverService = ChromeDriverService.CreateDefaultService();
driverService.HideCommandPromptWindow = true;
//private void OpenBrowser(bool? burl2 = false)
//{
// var driverService = ChromeDriverService.CreateDefaultService();
// driverService.HideCommandPromptWindow = true;
if (ViewBrowser)
{
if (driver == null)
{
driver = new ChromeDriver(driverService);
}
}
else
{
if (driver == null)
{
var options = new ChromeOptions();
options.AddArgument("headless");
driver = new ChromeDriver(driverService, options);
}
}
// if (ViewBrowser)
// {
// if (driver == null)
// {
// driver = new ChromeDriver(driverService);
// }
// }
// else
// {
// if (driver == null)
// {
// var options = new ChromeOptions();
// options.AddArgument("headless");
// driver = new ChromeDriver(driverService, options);
// }
// }
try
{
//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 url3 = "https://trader.di.se/index.php/stocklist/index/2055?list=7127";
//var url1 = "https://www.finansportalen.se/aktiekurser/";
driver.Navigate().GoToUrl(burl2.HasValue ? (burl2.Value ? url2 : url) : url3);
// try
// {
// //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 url3 = "https://trader.di.se/index.php/stocklist/index/2055?list=7127";
// //var url1 = "https://www.finansportalen.se/aktiekurser/";
// driver.Navigate().GoToUrl(burl2.HasValue ? (burl2.Value ? url2 : url) : url3);
}
catch
{
throw;
}
// }
// catch
// {
// throw;
// }
}
//}
private void saveStockData(List<DiTraderStockRow> saveRow)
{
@ -246,7 +247,8 @@ namespace StockDal
{
StockMarketList = new Dictionary<string, DiTraderStockRow>();
DumpObjects = new List<DiTraderStockRow>();
var groupedStocks = _stockRepository.GetStocksGroupedPerPerson(persId);
var groupedStocks = persId == 0 ? _stockRepository.GetStocksGroupedAllPersons()
: _stockRepository.GetStocksGroupedPerPerson(persId);
var lastGroup = string.Empty;
var stockList = new List<string>();
foreach (var groupedStock in groupedStocks)
@ -359,19 +361,20 @@ namespace StockDal
}
public void LoadStockMarketList(int persId, bool viewBrowser)
{
StockMarketList = new Dictionary<string, DiTraderStockRow>();
ViewBrowser = viewBrowser;
OpenBrowser();
Find_Data();
}
//public void LoadStockMarketList(int persId)
//{
// LoadStockMarketList(persId);
// //StockMarketList = new Dictionary<string, DiTraderStockRow>();
// //ViewBrowser = viewBrowser;
// //OpenBrowser();
// //Find_Data();
//}
public void RefreshMarketList(int persId)
{
StockMarketList = new Dictionary<string, DiTraderStockRow>();
driver.Navigate().Refresh();
Find_Data();
//StockMarketList = new Dictionary<string, DiTraderStockRow>();
//driver.Navigate().Refresh();
//Find_Data();
}
public void Clean()