Ejemplo n.º 1
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);
        }
Ejemplo n.º 2
0
        public void Execute(WebBrowser webBrowser, IEnumerable <IDataWebScraperStepProperty> dataWebScraperStepProperties)
        {
            IDataWebScraperStepProperty urlProperty = DataWebScrapperStepPropertyValidator.GetFirstProperty(DataWebScraperStepPropertyType.Url, dataWebScraperStepProperties);
            IDataWebScraperStepProperty millisecondsToHoldProperty = DataWebScrapperStepPropertyValidator.GetFirstProperty(DataWebScraperStepPropertyType.MillisecondsToHold, dataWebScraperStepProperties);

            DataWebScrapperStepPropertyValidator.ValidatePropertyValueNotEmpty(urlProperty);
            DataWebScrapperStepPropertyValidator.ValidatePropertyValueNumericNotZero(millisecondsToHoldProperty);

            DataWebScraperThreadHolder = ThreadHolderManagerFactory.GetDataWebScraperThreadHolder(long.Parse(millisecondsToHoldProperty.Value));
            DataWebScraperThreadHolder.SetThreadValue(false);
            try
            {
                webBrowser.DocumentCompleted += WebBrowser_DocumentCompleted;
                webBrowser.Navigate(urlProperty.Value);
                //DataWebScraperThreadHolder.WaitUntilValue(true);
            }catch (Exception e)
            {
                string r = e.Message;
            }
        }
Ejemplo n.º 3
0
 internal SetAttributeOnElementDataWebScraperStepStrategy(DataWebScrapperStepPropertyValidator dataWebScrapperStepPropertyValidator, DataWebScraperElementFinder dataWebScraperElementFinder)
 {
     DataWebScrapperStepPropertyValidator = dataWebScrapperStepPropertyValidator;
     DataWebScraperElementFinder          = dataWebScraperElementFinder;
 }
Ejemplo n.º 4
0
 public SetAttributeOnElementDataWebScraperStepStrategy()
 {
     DataWebScrapperStepPropertyValidator = new DataWebScrapperStepPropertyValidator();
     DataWebScraperElementFinder          = new DataWebScraperElementFinder();
 }
Ejemplo n.º 5
0
 internal LoadWebPageDataWebScraperStepStrategy(DataWebScrapperStepPropertyValidator dataWebScrapperStepPropertyValidator, ThreadHolderManagerFactory threadHolderManagerFactory)
 {
     DataWebScrapperStepPropertyValidator = dataWebScrapperStepPropertyValidator;
     ThreadHolderManagerFactory           = threadHolderManagerFactory;
 }
Ejemplo n.º 6
0
 public LoadWebPageDataWebScraperStepStrategy()
 {
     DataWebScrapperStepPropertyValidator = new DataWebScrapperStepPropertyValidator();
     ThreadHolderManagerFactory           = new ThreadHolderManagerFactory();
 }