Регистрация Главная Сообщество
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

Ответ
 
Опции темы
Старый 30.11.2011, 18:52   #1
Заблокирован
 Разведчик
Аватар для OrBiT_DaRk[2]
 
OrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известен
Регистрация: 14.11.2011
Сообщений: 26
Популярность: 478
Сказал(а) спасибо: 220
Поблагодарили 21 раз(а) в 16 сообщениях
 
По умолчанию Авторизация по Sid-y в DarkOrbit, парс информации

В этой статье я покажу как зайти на игровой аккаунт по DoSid-у (DarkOrbit Session ID), и спарсить некоторые данные с нуля!

Я использую [Ссылки могут видеть только зарегистрированные пользователи. ] (Ссылка на microsoft.com)

1. Для начала создадим новый проект.
1.1. Создаем на форме 5 текстбоксов, называем serv, sid, textbox1, textbox2, uridiym (textbox1 и textbox2 делаем visible = false). 1 кнопку с названием login. Textbox1 = "xcred": ". Textbox2 = ","jackpot":
2. Кликаем 2 раза на форму, что бы перейти к коду. В самом начале кода, перед Public Class Form1 пишем:
Код:
Imports System.Net
Imports System.IO
2.1. Вставляем функцию парса:
Код:
Public Function Pars(ByRef strSource As String, ByRef strStart As String, ByRef strEnd As String, Optional ByRef startPos As Integer = 0) As String
        Dim iPos As Integer, iEnd As Integer, lenStart As Integer = strStart.Length
        Dim strResult As String

        strResult = String.Empty
        iPos = strSource.IndexOf(strStart, startPos)
        iEnd = strSource.IndexOf(strEnd, iPos + lenStart)

        If iPos <> -1 AndAlso iEnd <> -1 Then
            strResult = strSource.Substring(iPos + lenStart, iEnd - (iPos + lenStart))
        End If

        Return strResult
    End Function
3. Теперь кликаем 2 раза на кнопку что бы перейти к коде кнопки, и пишем.
Код:
  Dim WC As New WebClient
        Dim DarkO, internalStartPageCode, uridium As String
                DarkO = "http://" & serv.Text & ".darkorbit.com/indexInternal.es?action=internalStart&dosid=" & sid.Text ''генерируем ссылку
        WC.Headers.Add("Cookie: __utma=1.120236064.1316868271.1316868271.1316868271.1; __utmb=1.12.10.1316868271; __utmc=1; __utmz=1.1316868271.1.1.utmcsr=darkorbit.bigpoint.com|utmccn=(referral)|utmcmd=referral|utmcct=/index.es; dosid=" & sid.Text) ''отправляем куки
        internalStartPageCode = WC.DownloadString(DarkO) ''качаем исходный код странички
        uridium = Pars(internalStartPageCode, TextBox1.Text, TextBox2.Text) '' парсим
        uridiym.Text = uridium ''вставляем в текстбокс
Готово, в текстбоксе uridiym должно появится число, кол-во уридиума на аккауте, кому что неясно качаем исходник. Или спрашивайте здесь.

[Ссылки могут видеть только зарегистрированные пользователи. ][Ссылки могут видеть только зарегистрированные пользователи. ]

Последний раз редактировалось OrBiT_DaRk[2]; 30.11.2011 в 19:00.
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
antisteals (10.08.2012), OrBiT_DaRk (11.12.2011)
Старый 30.11.2011, 20:29   #2
Заблокирован
 Разведчик
Аватар для Bazuuka
 
Bazuuka на правильном путиBazuuka на правильном пути
Регистрация: 25.11.2011
Сообщений: 8
Популярность: 140
Сказал(а) спасибо: 0
Поблагодарили 8 раз(а) в 8 сообщениях
Отправить сообщение для Bazuuka с помощью ICQ Отправить сообщение для Bazuuka с помощью Skype™
 
По умолчанию Re: Авторизация по Sid-y в DarkOrbit, парс информации

у меня вот какая проблема возникает (ТЫК)


А исходник полностью готовый уже?
  Ответить с цитированием
Старый 30.11.2011, 20:35   #3
Заблокирован
 Разведчик
Аватар для OrBiT_DaRk[2]
 
OrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известен
Регистрация: 14.11.2011
Сообщений: 26
Популярность: 478
Сказал(а) спасибо: 220
Поблагодарили 21 раз(а) в 16 сообщениях
 
По умолчанию Re: Авторизация по Sid-y в DarkOrbit, парс информации

Цитата:
Сообщение от BazuukaПосмотреть сообщение
А исходник полностью готовый уже?

да. Работоспособный, даже сид и сервер уже вставил)
  Ответить с цитированием
Старый 30.11.2011, 23:43   #4
 Разведчик
Аватар для HappyHacker
 
HappyHacker неизвестен в этих краяхHappyHacker неизвестен в этих краяхHappyHacker неизвестен в этих краях
Регистрация: 26.11.2011
Сообщений: 9
Популярность: -238
Сказал(а) спасибо: 2
Поблагодарили 3 раз(а) в 3 сообщениях
 
По умолчанию Re: Авторизация по Sid-y в DarkOrbit, парс информации

А можно как то исходник под
visual c# 2010 подогнать?
________________
Цитата:
[Ссылки могут видеть только зарегистрированные пользователи. ]

Как надоели блатные школьники,
Минусующие репутацию.
  Ответить с цитированием
Старый 01.12.2011, 11:03   #5
Заблокирован
 Разведчик
Аватар для OrBiT_DaRk[2]
 
OrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известен
Регистрация: 14.11.2011
Сообщений: 26
Популярность: 478
Сказал(а) спасибо: 220
Поблагодарили 21 раз(а) в 16 сообщениях
 
По умолчанию C# code

Цитата:
Сообщение от HappyHackerПосмотреть сообщение
А можно как то исходник под
visual c# 2010 подогнать?

Мой исходник на VB.NET, но можно сделать подобное:

Код:
WebClient WC = new WebClient();
string DarkO;
string internalStartPageCode;
string uridium;
DarkO = "http://" + serv.Text + ".darkorbit.com/indexInternal.es?action=internalStart&dosid=" + sid.Text;
WC.Headers.Add("Cookie: __utma=1.120236064.1316868271.1316868271.1316868271.1; __utmb=1.12.10.1316868271; __utmc=1; __utmz=1.1316868271.1.1.utmcsr=darkorbit.bigpoint.com|utmccn=(referral)|utmcmd=referral|utmcct=/index.es; dosid=" + sid.Text);
internalStartPageCode = WC.DownloadString(DarkO);
uridium = Pars(internalStartPageCode, TextBox1.Text, TextBox2.Text);
uridiym.Text = uridium;
Если что то не так, то извините, с# под рукой нету.
Код:
Imports System.Net
Imports System.IO
заменяем на
Код:
using System.Net;
using System.IO;
Вроде все.
  Ответить с цитированием
Старый 01.12.2011, 12:17   #6
 Разведчик
Аватар для HappyHacker
 
HappyHacker неизвестен в этих краяхHappyHacker неизвестен в этих краяхHappyHacker неизвестен в этих краях
Регистрация: 26.11.2011
Сообщений: 9
Популярность: -238
Сказал(а) спасибо: 2
Поблагодарили 3 раз(а) в 3 сообщениях
 
По умолчанию Re: Авторизация по Sid-y в DarkOrbit, парс информации

Код:
WebClient WC = new WebClient();
string DarkO;
string internalStartPageCode;
string uridium;
DarkO = "http://" + serv.Text + ".darkorbit.com/indexInternal.es?action=internalStart&dosid=" + sid.Text;
WC.Headers.Add("Cookie: __utma=1.120236064.1316868271.1316868271.1316868271.1; __utmb=1.12.10.1316868271; __utmc=1; __utmz=1.1316868271.1.1.utmcsr=darkorbit.bigpoint.com|utmccn=(referral)|utmcmd=referral|utmcct=/index.es; dosid=" + sid.Text);
internalStartPageCode = WC.DownloadString(DarkO);
uridium = Pars(internalStartPageCode, TextBox1.Text, TextBox2.Text);
uridiym.Text = uridium;
Не так чего то не парсит ...
________________
Цитата:
[Ссылки могут видеть только зарегистрированные пользователи. ]

Как надоели блатные школьники,
Минусующие репутацию.
  Ответить с цитированием
Старый 01.12.2011, 14:24   #7
Заблокирован
 Разведчик
Аватар для OrBiT_DaRk[2]
 
OrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известенOrBiT_DaRk[2] скоро будет известен
Регистрация: 14.11.2011
Сообщений: 26
Популярность: 478
Сказал(а) спасибо: 220
Поблагодарили 21 раз(а) в 16 сообщениях
 
Smile Re: Авторизация по Sid-y в DarkOrbit, парс информации

Цитата:
Сообщение от HappyHackerПосмотреть сообщение
Не так чего то не парсит ...

Функцию парса найди где то, у меня есть такая :
Код:
public string Pars(ref string strSource, ref string strStart, ref string strEnd, [System.Runtime.InteropServices.OptionalAttribute, System.Runtime.InteropServices.DefaultParameterValueAttribute(0)] ref  // ERROR: Optional parameters aren't supported in C#
int startPos)
	{
		int iPos;
		int iEnd;
		int lenStart = strStart.Length;
		string strResult;
		strResult = string.Empty;
		iPos = strSource.IndexOf(strStart, startPos);
		iEnd = strSource.IndexOf(strEnd, iPos + lenStart);
		if (iPos != -1 && iEnd != -1) {
			strResult = strSource.Substring(iPos + lenStart, iEnd - (iPos + lenStart));}
return strResult;
	}
Но я не могу проверить ее на работоспособность. Просто сконвертировал ее тут [Ссылки могут видеть только зарегистрированные пользователи. ]

[Ссылки могут видеть только зарегистрированные пользователи. ] - или используй этот.
  Ответить с цитированием
Старый 02.12.2011, 06:51   #8
Заблокирован
 Сержант
Аватар для QwintO
 
QwintO блестящий пример для подражанияQwintO блестящий пример для подражанияQwintO блестящий пример для подражанияQwintO блестящий пример для подражанияQwintO блестящий пример для подражанияQwintO блестящий пример для подражанияQwintO блестящий пример для подражанияQwintO блестящий пример для подражанияQwintO блестящий пример для подражанияQwintO блестящий пример для подражанияQwintO блестящий пример для подражания
Регистрация: 24.05.2011
Сообщений: 167
Популярность: 2149
Сказал(а) спасибо: 34
Поблагодарили 83 раз(а) в 52 сообщениях
Отправить сообщение для QwintO с помощью Skype™
 
По умолчанию Re: Авторизация по Sid-y в DarkOrbit, парс информации

Хммм... Не советовал бы я в ДО парсить подобным образом, особенно, когда собираешься парсить не один игровой сервер. На одном, конечно прокатит... Но у программеров-хтмл ДО ручки кривоватые иногда, или софт ихний такой. На разных игровых серверах одна и та же страница не будет одинаковой. И дело даже не в том что - локализация надписей. Просто - среди серверов - обязательно найдется один, два, где в одном и том же месте окажутся лишние пробелы, или же наоборот - не будет хватать... Лучше всего пользоваться библиотекой, указанной выше - HtmlAgilityPack, но для парсинга одного, двух значений - это лишнее. Проще и надежнее пользоваться Регексом... Мощная штука, если в правильных руках.
Я обычно пользуюсь примерно такой функцией.
Например, чтобы найди сид -
Код:
        static string Parse(string inputstring, string patternstring, int group)
        {
            string outstring = string.Empty;
            Match pattResult = Regex.Match(inputstring, patternstring, RegexOptions.IgnoreCase);
            if (patt.Success)
              return  outstring = pattResult.Groups[group].ToString();
                return outstring;
        }
использовать примерно так:

string input = "Здесь страница для парсинга, которую мы получили раньше, или же строка в которой желаем что то найти";
string pattern = @"(dosid=)(\S+)('))";

string resultat = Parse(input, pattern, 2);
if(resultat != string.Empty)
{
здесь у нас действия, если функция нашла sid
}

Не забываем подключить регекс
using System.Text.RegularExpression;

Студии под рукой нет, мог ошибиться при написании...

Последний раз редактировалось QwintO; 02.12.2011 в 06:58.
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
OrBiT_DaRk (11.12.2011), OrBiT_DaRk[2] (02.12.2011)
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Обсуждение] Утечка информации Кто-то2 Общение и обсуждение CrossFire 8 29.10.2011 04:32

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 23:10.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net