|
This is considered as rude.
You already asked this question in C# forum.
Manas Bhardwaj
Please remember to rate helpful or unhelpful answers, it lets us and people reading the forums know if our answers are any good.
modified on Wednesday, July 8, 2009 10:08 AM
|
|
|
|
|
Not clear why it is rude??? I am asking different forums and those that do not necessary see my question from other forums. So, if my question maybe answered in Perl and not in C# then the Perl guys will never see my question.
If this is not correct let me know. I have not been on here in many years.
Thanks,
Antone
|
|
|
|
|
Antone Eason wrote: Not clear why it is rude??? I am asking different forums and those that do not necessary see my question from other forums
Well, in such cases, you can post the question in most appropriate forum and link to it while posting in the other forums. Putting the same text in all places is considered to be rude.
To answer your question,
You have said the page you want to download requires authentication and some word art. Do you mean a CAPTCHA[^] ? If yes, getting the authentication pass is tough as you can't predict the value of CAPTCHA.
|
|
|
|
|
OK thanks I will look into linking for future posts. As far as my question I do not need to authenticate or worry about login credentials. I am already in fine, the page just changes every few minutes.
Think of it as simply being able to click the [view source] button on any web page that happens to be on the browser and then the source e.g. raw HTML is written to a text file.
That is what I need a script or program to be the view source button that I can invoke inside a batch file that is called by the scheduler every 5 minutes or so to check for the latest update.
Thanks,
Antone
|
|
|
|
|
Look at the WebClient class and work with DownloadString[^] method. It does exactly what you are looking for. Try to follow the below steps
1 - Create a console application which quits automatically once the job is done.
2 - Inside this, use WebClient class and request to the web page. This will give you raw HTML.
3 - Schedule this exe to run every 5 minutes for getting the latest updates.
Hope that helps
|
|
|
|
|
Hi - yes that sounds like an excellent solution. I will try just a little short on time.
Thanks again!
Antone
|
|
|
|
|
Hi - Yes that is security used. Thanks for your input and quick response.
Thanks,
Antone
|
|
|
|
|
Hi, have you tried Fiddler its a HTTP Debugging tool and logs whats going on as your are browsing, you can see html, js files downloaded and alot more, might help.
If that doesnt do the trick then look at the WebRequest object this can be used to get the HTTP response, as you said there is a log screen it maybe harder, but you can do your own POST by changing the username, password, and wordart answer into a Byte array and then sending this with your request to whatever page the form points too.
try here http://msdn.microsoft.com/en-us/library/system.net.webrequest.aspx[^]
Phil
|
|
|
|
|
Hi Phil,
Thanks for the quick reply! I will take a look at fiddler. I am an assembly language programmer mainly, so I do not know so much about script languages. If fiddler can write the webpage to a file then it should work!
Please understand the login is not an issue anymore I can login fine and leave the opera browser on with refresh set to 30 seconds. Then as the page refreshes with new data I want to write it to a file. Next my program runs and check the raw data to see if what I am looking for is there, if it is then the bell will ring, if not then it ends and waits for the next html file to check.
Thanks,
Antone
|
|
|
|
|
Hi Phil,
Sorry Fiddler is a no go. It does not write data to a file.
Thanks,
Antone
|
|
|
|
|
How about if you use the WebBrowser Control on a windows form? Im not sure but it think you should beable to browse to the page you want and then write some code to get the HTML of the current page on the WebBrowser control.
If that doesnt work then you can look at using Automating IE directly i forget the dll name its something like SHDocVW and this contains the Interfaces for automating IE Directly.
From here you can get the current document.
|
|
|
|
|
Thanks for the input, but I do not believe I have the knowledge to do that. I was hoping that this has been done before. The IE automation sounds interesting.
Thanks,
Antone
|
|
|
|
|
If you want it learn its Called Platform Invoke in .NET its all about using the existing Windows dll's from .NET
here is a good artical to get started its shows you how to use some of the functions in the User32.dll
[PInoke on CodeProject]
this website list alot of the windows functions with code to automate them
http://www.pinvoke.net/[www.pinvoke.net]
Phil
|
|
|
|
|
Hi Phil,
Thanks for all your assistnce. I really though this would have been done in the past. I will take a look at all the info you sent to me.
Still waiting to hear back from the Perl guys, I really thought you can do this in Perl.
Thanks,
Antone
|
|
|
|
|
It is possible to get the HTML From a WebBrowser Control see below code sorry if you dont know C#
I just put a textbox on the page to enter the url, a button to navigate to the url(btnLoadWebsite_Click handles this button) and a button to get the HTML from the currently displayed page (btnGetHTML_Click handles this).
private void btnLoadWebsite_Click(object sender, EventArgs e)
{
try
{
Uri oURL = new Uri(txtURL.Text);
wbMain.Navigate(oURL);
}
catch (Exception err)
{
MessageBox.Show(err.ToString());
}
}
private void btnGetHtml_Click(object sender, EventArgs e)
{
MessageBox.Show(wbMain.DocumentText);
}
The important bit is wbMain.DocumentText. wbMain is the WebBrowser Control and DocumentText is the property that holds the current html page text.
Phil
|
|
|
|
|
I want to call an window from an ASP Web Page by clicking an ASP:Button
and the code will be run at both server and client side.
Can anybody guide me please?
|
|
|
|
|
Member 4056066 wrote: I want to call an window from an ASP Web Page by clicking an ASP:Button
What kind of window?
Manas Bhardwaj
Please remember to rate helpful or unhelpful answers, it lets us and people reading the forums know if our answers are any good.
|
|
|
|
|
just another asp page in the window
modified on Wednesday, July 8, 2009 9:30 AM
|
|
|
|
|
What you need is this[^]
Manas Bhardwaj
Please remember to rate helpful or unhelpful answers, it lets us and people reading the forums know if our answers are any good.
|
|
|
|
|
Yees !
I found some very good way.
and thanks for the search link
|
|
|
|
|
Hi friends,
Its very silly problem. But still it scares me.
int _Totalcnt = 62;
int _Namecnt = 31;
decimal Pctmatch = Convert.ToDecimal((_Namecnt / _Totalcnt) * 100);
I am getting value for Pctmatch as '0'. why it showing wrong. How can i get exact decimal value there?
G. Satish
|
|
|
|
|
Convert _Namecnt and _Totalcnt to decimals rather than the result of the calculation, i.e.
decimal Pctmatch = (Convert.ToDecimal(_Namecnt) / Convert.ToDecimal(_Totalcnt)) * 100;
|
|
|
|
|
|
Do not spam
Manas Bhardwaj
Please remember to rate helpful or unhelpful answers, it lets us and people reading the forums know if our answers are any good.
|
|
|
|
|
Shivass wrote: www.spiritssoft.com
Please Don't SPAM. This is second time you are doing the same thing.
|
|
|
|