PHP Code:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Web;
namespace oGameBot
{
class Program
{
static void Main(string[] args)
{
var cookieContainer=new CookieContainer();
const string username = "юзер", password = "пассворд";
const string userAgent = "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 " +
"(KHTML, like Gecko) Chrome/40.0.2214.91 Safari/537.36";
// Startseite aufrufen
HttpWebRequest req = WebRequest.CreateHttp("http://de.ogame.gameforge.com");
req.Method = "GET";
req.Host = "de.ogame.gameforge.com";
req.UserAgent = userAgent;
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
req.Headers.Add("Accept-Language", "de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4,ru;q=0.2");
req.Headers.Add("Accept-Encoding", "gzip, deflate, sdch");
req.CookieContainer = cookieContainer;
using (var resp = (HttpWebResponse)req.GetResponse()) { }
// Login
req = WebRequest.CreateHttp("http://de.ogame.gameforge.com/main/login");
req.Method = "POST";
req.Host = "de.ogame.gameforge.com";
req.UserAgent = userAgent;
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
req.Headers.Add("Accept-Language", "de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4,ru;q=0.2");
req.Headers.Add("Accept-Encoding", "gzip, deflate, sdch");
req.CookieContainer = cookieContainer;
req.ContentType = "application/x-www-form-urlencoded";
var postParams = Encoding.UTF8.GetBytes("kid=&uni=s131-de.ogame.gameforge.com&login=" +
HttpUtility.UrlEncode(username) +
"&pass=" + HttpUtility.UrlEncode(password));
req.ContentLength = postParams.Length;
string startPage, serverHost;
using (var reqStream = req.GetRequestStream())
{
reqStream.Write(postParams, 0, postParams.Length);
using (var resp = (HttpWebResponse)req.GetResponse())
{
startPage = resp.ResponseUri.ToString();
serverHost = Regex.Match(startPage, @"\/\/(.+com)").Groups[1].Value;
}
}
req = WebRequest.CreateHttp(startPage);
req.Method = "GET";
req.Host = serverHost;
req.UserAgent = userAgent;
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
req.Headers.Add("Accept-Language", "de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4,ru;q=0.2");
req.Headers.Add("Accept-Encoding", "gzip, deflate, sdch");
req.CookieContainer = cookieContainer;
req.AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip;
var content="";
using (var resp = (HttpWebResponse) req.GetResponse())
{
using (var reader = new StreamReader(resp.GetResponseStream()))
{
content = reader.ReadToEnd();
}
}
Console.WriteLine(content);
var resorsPage= startPage.Replace("overview", "resources");
// [url=http://s131-de.ogame.gameforge.com/game/index.php?page=overview&PHPSESSID=666df0fbcba06e687437588e891ccfdaa7d36df2]OGame Startseite[/url]
req = WebRequest.CreateHttp(resorsPage);
req.Method = "GET";
req.Host = serverHost;
req.UserAgent = userAgent;
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
req.Headers.Add("Accept-Language", "de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4,ru;q=0.2");
req.Headers.Add("Accept-Encoding", "gzip, deflate, sdch");
req.CookieContainer = cookieContainer;
req.AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip;
using (var resp = (HttpWebResponse)req.GetResponse())
{
using (var reader = new StreamReader(resp.GetResponseStream()))
{
content = reader.ReadToEnd();
}
}
// [url=http://s131-de.ogame.gameforge.com/game/index.php?page=resources&ajax=1&type=1]OGame Startseite[/url]
resorsPage = resorsPage.Insert(resorsPage.IndexOf("PHPSESSID"), "ajax=1&type=1");
req = WebRequest.CreateHttp(resorsPage);
req.Method = "GET";
req.Host = serverHost;
req.UserAgent = userAgent;
req.Accept = "*/*";
req.Headers.Add("Accept-Language", "de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4,ru;q=0.2");
req.Headers.Add("Accept-Encoding", "gzip, deflate, sdch");
req.CookieContainer = cookieContainer;
req.AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip;
using (var resp = (HttpWebResponse)req.GetResponse())
{
using (var reader = new StreamReader(resp.GetResponseStream()))
{
content = reader.ReadToEnd();
}
}
resorsPage = resorsPage.Insert(resorsPage.IndexOf("PHPSESSID"), "&deprecated=1");
req = WebRequest.CreateHttp(resorsPage);
req.Method = "POST";
req.Host = serverHost;
req.UserAgent = userAgent;
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
req.Headers.Add("Accept-Language", "de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4,ru;q=0.2");
req.Headers.Add("Accept-Encoding", "gzip, deflate, sdch");
req.CookieContainer = cookieContainer;
req.ContentType = "application/x-www-form-urlencoded";
req.AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip;
var postParams1 = Encoding.UTF8.GetBytes("token=a1329596d322f24f9c43822bd96e56ea&modus=1&type=1"); //tocken verändert sich
req.ContentLength = postParams1.Length;
//string startPage, serverHost;
using (var reqStream = req.GetRequestStream())
{
reqStream.Write(postParams1, 0, postParams.Length);
//using (var resp = (HttpWebResponse)req.GetResponse())
//{
// startPage = resp.ResponseUri.ToString();
// serverHost = Regex.Match(startPage, @"\/\/(.+com)").Groups[1].Value;
//}
}
using (var resp = (HttpWebResponse)req.GetResponse())
{
using (var reader = new StreamReader(resp.GetResponseStream()))
{
content = reader.ReadToEnd();
}
}
Console.ReadKey();
}
}
}