I need a coder who can explain and show working code for:
Public Class CustomClass
public property URL as string
public property timeToComplete
public property html as HtmlDocument
1. Have a list of custom objects of the above class. Inside each of them contain a URL to fire. These would be [url removed, login to view] URLs which I will provide (1000 of them for testing)
2. Fire these URLs in multiple background workers simultaneously depending on a count that the user prescribes
3. When the download of the URL finishes, the background worker handling it should update the list with attributes like timeToComplete and Html. Then it should launch another background worker if the thread count is less than user prescribed one.
4. The above process should go on till all the URLs in the custom class object list are downloaded
5. Feature to cancel all threads immediately by pressing a button on the main form
6. The entire process will be triggered by another button in the main form
a) All the above should be done in a fresh custom class class called ScrapeWebsite, not in the main UI form
b) The main UI form should get response like
-->How many threads running
-->How many URLs finished (should not count cancelled threads that fire completed event)
-->Last item time taken to download
-->Estimated time left to complete
Pls include all necessary events that need to be fired from the ScrapeWebsite to the UI class to publish various things.
a) Chilkat http component needs to be used for 32 bit for download of html
b) HtmlAgilityPack needs to be used to store the html
Need it in one day pls if possible.