Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.03.2016, 21:22   #1
nomerasd
Пользователь
 
Регистрация: 07.03.2016
Сообщений: 16
По умолчанию парсер с отработкой javascript

есть сайт url
как бы сам парсер под него уже написан (если нет надобности в отработке яваскрипта), но.
вся проблема заключается в том, что результат сайт выдаёт, после нажатия кнопки -> отработка яваскрипта -> задержка по времени -> загружается страница.
скрипт отрабатывается на стороне клиента. соответственно надо подключать какой-то движок в проект.
читал про какой-то движок для тестов проектов. его не надо выводить в консоль, есть работа со скриптами и умеет ждать задержку загрузки страницы. название какое-то короткое у него. вот ни запомнит, не записал и закладку на страницу не сделал. а теперь найти не могу.
что посоветуете?
nomerasd вне форума Ответить с цитированием
Старый 23.03.2016, 12:27   #2
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

У вашего сайта есть API: http://xtool.ru/api/ Через API нужно работать.
8Observer8 вне форума Ответить с цитированием
Старый 23.03.2016, 14:03   #3
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

Я попытался, может кто подправить? Приходит ошибка, вот что выводится в консоль:

Цитата:
Please wait...

{"Error":"\u041d\u0435 \u0432\u0435\u0440\u043d\u043e \u0437\u0430\u0434\u0430\u
043d \u0443\u0440\u043b","ErrorCode":404 }

Done.
Код:
using System;
using System.Threading.Tasks;
using System.Net;
using Newtonsoft.Json.Linq;

namespace CheckTrust
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Please wait...\n");
            ShowTrustInfo().Wait();
            Console.WriteLine("\nDone.");

            // Delay
            Console.ReadKey();
        }

        static async Task ShowTrustInfo()
        {
            using (var client = new WebClient())
            {
                string url = "http://api.xtool.ru";
                
                JObject obj = new JObject();
                obj.Add("type", "trust");
                obj.Add("login", "*******@gmail.com");
                obj.Add("pass", "hash('sha512', '********')");

                var resp = await client.UploadStringTaskAsync(url, "PUT", obj.ToString());

                Console.WriteLine(resp);
            }
        }
    }
}
8Observer8 вне форума Ответить с цитированием
Старый 23.03.2016, 14:20   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Код:
Regex.Unescape(resp)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 23.03.2016, 14:26   #5
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

Alex11223, большое спасибо! Понял, я пропустил Url

Теперь говорит, что:
Цитата:
{"Error":"Не верно заданы Логин или Пароль пользователя","ErrorCode":401}
8Observer8 вне форума Ответить с цитированием
Старый 23.03.2016, 14:33   #6
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

Цитата:
Пароль пользователя в системе xtool.ru, для которого делается запрос в зашифрованном sha512 виде.
Надо зашифровать? Ниразу не шифровал
8Observer8 вне форума Ответить с цитированием
Старый 23.03.2016, 14:38   #7
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

Нашёл такой код, но не прокатывает. Что тут поменять:

Код:
        public static string GetCrypt(string text)
        {
            string hash = "";
            SHA512 alg = SHA512.Create();
            byte[] result = alg.ComputeHash(Encoding.UTF8.GetBytes(text));
            hash = Encoding.UTF8.GetString(result);
            return hash;
        }
8Observer8 вне форума Ответить с цитированием
Старый 23.03.2016, 14:39   #8
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

И сейчас не пошифруешь. Это хешированние, а не шифрование
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 23.03.2016, 14:48   #9
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Проще в fiddler было посмотреть чего сайт вызывает и как получает. Там всё равно дурацкий json идёт с html кодом внутрях и javascript'ом
pu4koff вне форума Ответить с цитированием
Старый 23.03.2016, 14:53   #10
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
И сейчас не пошифруешь. Это хешированние, а не шифрование
Значит у них в описании ошибка?

То есть нужно было так написать?
Цитата:
Пароль пользователя в системе xtool.ru, для которого делается запрос в хешированном sha512 виде.
Наверное, должно быть как-то так:
Код:
                JObject obj = new JObject();
                obj.Add("type", "trust");
                obj.Add("login", "*******@gmail.com");
                obj.Add("pass", GetCrypt("********")); //"hash('sha512', '********')");
                obj.Add("url", "http://xtool.ru/");

Цитата:
Сообщение от pu4koff Посмотреть сообщение
Проще в fiddler было посмотреть чего сайт вызывает и как получает. Там всё равно дурацкий json идёт с html кодом внутрях и javascript'ом
Я первым делом попробовал fiddler'ом, но там столько запросов, наверное, пару сотен. Я их все прощёлкал, но там не нашёл JSON, в виде ответа с сайта с трастом

Последний раз редактировалось 8Observer8; 23.03.2016 в 14:56.
8Observer8 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
парсер на JavaScript Luca Brasi JavaScript, Ajax 8 08.02.2015 00:16
Парсер инфы с сайт используя javascript bilibian Общие вопросы Delphi 3 21.02.2014 23:20
Проблемы с отработкой запросов Жменька Microsoft Office Access 2 24.05.2011 14:53
ГРАБЕР ПАРСЕР на JavaScript vova-forum JavaScript, Ajax 2 20.01.2011 19:55