Example #1
0
        private void WebBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            WebBrowser webBrowser = sender as WebBrowser;

            webBrowser.DocumentCompleted -= WebBrowser_DocumentCompleted;

            if (webBrowser.Document != null && webBrowser.ReadyState == WebBrowserReadyState.Complete)
            {
                DataWebScraperThreadHolder.SetThreadValue(true);
            }

            StepWasCompleted?.Invoke(null, null);
        }
Example #2
0
        public void Execute(WebBrowser webBrowser, IEnumerable <IDataWebScraperStepProperty> dataWebScraperStepProperties)
        {
            IEnumerable <IDataWebScraperStepProperty> attributeToFindElementByProperties = DataWebScrapperStepPropertyValidator.GetAllProperties(DataWebScraperStepPropertyType.AttributeToFindElementBy, dataWebScraperStepProperties);
            IEnumerable <IDataWebScraperStepProperty> attributeToSetInElementProperties  = DataWebScrapperStepPropertyValidator.GetAllProperties(DataWebScraperStepPropertyType.AttributeToSetInElement, dataWebScraperStepProperties);

            DataWebScrapperStepPropertyValidator.ValidatePropertiesValueNotEmpty(attributeToFindElementByProperties);
            DataWebScrapperStepPropertyValidator.ValidatePropertiesValueNotEmpty(attributeToSetInElementProperties);

            HtmlElement htmlElement = DataWebScraperElementFinder.FindElement(attributeToFindElementByProperties, webBrowser);

            foreach (IDataWebScraperStepProperty dataWebScraperStepProperty in attributeToSetInElementProperties)
            {
                htmlElement.SetAttribute(dataWebScraperStepProperty.Key, dataWebScraperStepProperty.Value);
            }

            StepWasCompleted?.Invoke(this, null);
        }
 private void DataWebScraperStepStrategy_StepWasCompleted(object sender, EventArgs e)
 {
     DataWebScraperStepStrategy.StepWasCompleted -= DataWebScraperStepStrategy_StepWasCompleted;
     StepWasCompleted.Invoke(this, new WebBroserInWebScraperStepRunnabelArgument(_webBrowser));
 }