Going to start with it, function list :
- Reads out a list (username-password...)
- Prints out in shape as :
-- Working + Gametime + BC
-- Working + Gametime
-- Working
-- Dead
- opensource
Going to start with it, function list :
- Reads out a list (username-password...)
- Prints out in shape as :
-- Working + Gametime + BC
-- Working + Gametime
-- Working
-- Dead
- opensource
Sorry, it dosent seem to work, all it says is Invalid login info![]()
Tried again, it DOES work MiguelThanx for the effort, but would be cool if it could check gametime left, if credit card is there for auto pay?, Eu and us? and what would be RLY great was if it could change pw.. if some1 made a prog gr8 like that, i would pay them!
That's alot of DOM work. (In C# at least)
Shouldn't be too hard to do so however. I'll see what I can cook up later.
I am scripting it in PERL but I am a bit stuckt at the post request.
The post request needs to have all 4 fields.
username
password
Login=Login
And the LT Signature which changes each time the page is reloaded.
Post byte data should be:
username=<account>&password=<password><=<lt signature that you grabbed from some form of regex>&Login=Login
Maybe that helps a bit. Keep in mind, it's https, not http. So a few extra measures are needed.
Quick snippet of what you would do in C#.
And the regex grabber:Code:LTSignature = WebPage.GetWebPageRegex(@"https://www.worldofwarcraft.com/login/login?service=https%3A%2F%2Fwww.worldofwarcraft.com%2Faccount%2Findex.html"); string PostDataStr = "username=" + txtAccount.Text + "&password=" + txtPassWord.Text + "<=" + LTSignature + "&Login=Login"; byte[] post_data = Encoding.UTF8.GetBytes(PostDataStr); string additional_headers = "Content-Type: application/x-www-form-urlencoded"; webBrowser1.Navigate(@"https://www.worldofwarcraft.com/login/login?service=https%3A%2F%2Fwww.worldofwarcraft.com%2Faccount%2Findex.html", "", post_data, additional_headers);
Of course having a var defined somewhere for the LTSignature.Code:public static string GetWebPageRegex(string url) { var rx = new Regex(@"(?<=B<input type=""hidden"" name=""lt"" value="").+b"); var webRequest = (HttpWebRequest)WebRequest.Create(url); webRequest.Timeout = 6000; var webResponse = (HttpWebResponse)webRequest.GetResponse(); Stream responseStream = webResponse.GetResponseStream(); string responseEncoding = webResponse.ContentEncoding.Trim(); if (responseEncoding.Length == 0) { responseEncoding = "us-ascii"; } var responseReader = new StreamReader(responseStream, Encoding.GetEncoding(responseEncoding)); Match _match = rx.Match(responseReader.ReadToEnd()); return _match.ToString(); }
Hope that helps some.
Last edited by Apoc; 03-15-2008 at 11:30 AM.
Glad to hear it's working. I was planning on adding more things like you mentioned, however I have no active accounts to test it on. If you or anyone else would be willing to give me an active account to use a little, I could probably get some of those features working too.
Of course I don't except people to just trust me, but maybe someone has a scammed account they don't care about or something like that.
Send you an test acc for ya![]()
I've been running with VisualBASIC and I just can't get it to send the data to the web form (which is really PISSING ME OFF). The whole form in VB, the data collection and handling etc, I have working perfectly, it's just the talking to the web server I can't do >.<
Wow you guys are smart people that know how to program XD. I want to learn but cant find out how
ReidE96, check this out if you're working in VB.
It dosnt work at EU accs :P
Why fill up a signature?
EU servers offline that why ;p
Could you guy make it like check what is the highest character that is in there since i got two account that dont have game time. It is going to be a pain in the ass