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

Отображение цен на предметы на сайте Dota2lounge

-

Баги, читы и статьи по Dota 2

- Уязвимости, баги, читы и статьи по Dota 2 в этом разделе. Темы с вопросами/просьбами запрещены!

Ответ
 
Опции темы
Старый 22.01.2014, 22:41   #1
 Сержант
Аватар для AнTиKиJIеP
 
AнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражанияAнTиKиJIеP блестящий пример для подражания
Регистрация: 01.04.2012
Сообщений: 105
Популярность: 1512
Сказал(а) спасибо: 157
Поблагодарили 422 раз(а) в 257 сообщениях
Отправить сообщение для AнTиKиJIеP с помощью Skype™
 
По умолчанию Отображение цен на предметы на сайте Dota2lounge

Скрипт позволяет смотреть все цены на сайте Dota2Lounge

1) Вам понадобиться гугл хром
2) Необходимо скачать и установить плагин Tampermonkey
3)Нажать кнопку добавить новый скрипт, и написать вот это:

Код:
// ==UserScript==
// @name        Price by ReQ
// @version     1.1
// @author      ReQ
// @description Displays an item's lowest price offer from the Steam community market and also provides a helper to copy an item's name by clicking the panel under it. Based on the "Steam Market Price Matcher" script by tomatolicious available at http://userscripts.org/scripts/source/154071.user.js
// @license     GPL version 3 or any later version; http://www.gnu.org/copyleft/gpl.html
// @include     http://dota2lounge.com/*
// @updateURL   http://userscripts.org/scripts/source/182588.user.js
// @downloadURL http://userscripts.org/scripts/source/182588.user.js
// @grant       GM_xmlhttpRequest
// @grant       GM_addStyle
// ==/UserScript==

// initialize the script for the items on the page
var initialize = function() {
    // find each item's name panel/slot
    var itemNamePanels = document.querySelectorAll(".item .name");
    attachExtraPanelsAndListeners(itemNamePanels);
    // watch the right list of items for changes, when it exists
    var rightItemList = document.querySelector("#rightlist #itemlist");
    if (rightItemList) {
        attachMutationObserver(rightItemList);
    }
    var offerPanel = document.querySelector("#messages #offer");
    if (offerPanel) {
        attachMutationObserver(offerPanel);
    }
}

// add to each item's name panel an extra panel that contains the price information and a click handler to facilitate copying the item's name 
var attachExtraPanelsAndListeners = function(itemNamePanels) {
    for (var i = 0, length = itemNamePanels.length; i < length; i++) {
        var itemNamePanel = itemNamePanels[i];
        // create our own panel to append..       
        var extraPanel = document.createElement('div');
        extraPanel.innerHTML = "<span class='scriptStatus'>Ошибка, убери курсор с предмета</span>";
        extraPanel.setAttribute("class", "extraPanel");
        // ..and do so
        itemNamePanel.appendChild(extraPanel);
        // set mouseover event listener on the item
        itemNamePanel.parentNode.addEventListener("mouseover", getLowestPriceHandler, false);
        // set click event handler for the item's name panel so that the item name can be copied to the clipboard easier
        itemNamePanel.addEventListener("click", copyItemNameHandler, false);
    }
}

// attach a mutation observer on the target item container
var attachMutationObserver = function(target) {     
    // create an observer instance
    var observer = new MutationObserver(function(mutations) {
        // we`re intereste only in mutations that add nodes. This skips the mutation introduced by the "Add item to offer" button's removal
        if (mutations.length == 1 && mutations[0].removedNodes.length > 0) {
            return;
        }
        // when the mutation happens, augment the new items with price info and etc.
        itemNamePanels = target.querySelectorAll(".item .name");
        attachExtraPanelsAndListeners(itemNamePanels);
    });
     
    // configuration of the observer
    var config = { childList: true };
     
    // pass in the target node, as well as the observer options
    observer.observe(target, config);
}

// event handler to grab the price
var getLowestPriceHandler = function() {
    var itemNameElement = this.querySelector(".name");
    // don`t try to get the price if we've already retrieved it
    if (itemNameElement.querySelector(".scriptStatus").innerHTML != "Ошибка, убери курсор с предмета") {
        return;
    }
    var theItem = itemNameElement.querySelector("b").innerHTML.trim();
    var theItemString = encodeURIComponent(theItem);
    // from Steam's community market website
    var appID = 570;
    itemNameElement.querySelector(".scriptStatus").innerHTML = "Загрузка... :)";
    GM_xmlhttpRequest({
        method: "GET",
        url: "http://steamcommunity.com/market/listings/" + appID + "/" + theItemString + "/",
        onload: function (response) {
            var httpResponse = response.responseText;
            var match = lowestPriceWithFeeRegExp.exec(httpResponse);
            var priceWithFee = "<span class='" + (match ?
                "itemMarketable'>" + match[1] :
                "itemNotMarketable'>Нету на продаже :(")
                + "</span>";
            match = lowestPriceWithoutFeeRegExp.exec(httpResponse);
            var priceWithoutFee = match ? match[1] + " - without fee (seller receives)" : ""; 
            itemNameElement.querySelector(".scriptStatus").innerHTML = "<span title='" + priceWithoutFee + "'>" + priceWithFee + "</span>";
        }
    });
}

// cached RegExps used to read the item's value from the Steam page.
var lowestPriceWithFeeRegExp = /<span class="market_listing_price market_listing_price_with_fee">\s*(.*?)\s*<\/span>/i;
var lowestPriceWithoutFeeRegExp = /<span class="market_listing_price market_listing_price_without_fee">\s*(.*?)\s*<\/span>/i;

// event handler to facilitate copying an item's name
var copyItemNameHandler = function(event) {
    // stop the element's parent (item) from getting the click event. This stops the item from being selected
    event.stopPropagation()
    // make sure we select the item name element
    var itemNameElement = event.target;
    while (!hasClass(itemNameElement, "name")) {
        itemNameElement = itemNameElement.parentNode;
    }
    // get and display the item's name
    var itemName = itemNameElement.querySelector("b").innerHTML.trim();
    window.prompt("Press CTRL+C to copy the item's name:", itemName);
}

// helper method to check if an element has the specified class name
var hasClass = function(element, cls) {
    return (" " + element.className + " ").indexOf(" " + cls + " ") > -1;
}

// style
GM_addStyle(".itemNotMarketable { font-size: 110%; color : red } .itemMarketable { color: blue }");

// initialize the script once the page has finished loading
window.onload = initialize;
Потом просто навести курсор на предмет, и всё!!!!
  Ответить с цитированием
8 пользователя(ей) сказали cпасибо:
БагНаркотик (28.01.2014), Ded_Mozauka (22.01.2014), ElectroVamp (23.01.2014), Evgeniydota (23.01.2014), Live STAR (23.01.2014), paradoxx134 (23.01.2014), Qnix (23.01.2014), Vlados9999 (27.02.2014)
Старый 23.01.2014, 11:59   #2
 Разведчик
Аватар для astat_4
 
astat_4 никому не известный тип
Регистрация: 04.12.2011
Сообщений: 6
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Отображение цен на предметы на сайте Dota2lounge

Спасибо! Хорошая штука. Но в идеале было бы отображение цен в одной валюте, а то показывает и в рублях и долларах и даже в евро.
  Ответить с цитированием
Старый 23.01.2014, 13:20   #3
-= Мастер Света =-
 Капитан
Аватар для cheLink
 
cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(
Регистрация: 03.10.2011
Сообщений: 267
Популярность: 41677
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 113
Поблагодарили 476 раз(а) в 329 сообщениях
 
По умолчанию Re: Отображение цен на предметы на сайте Dota2lounge

Cпасибо, добавить бы функцию отображения цен в кеях.
________________
Связь только [Ссылки могут видеть только зарегистрированные пользователи. ]
  Ответить с цитированием
Старый 23.01.2014, 15:47   #4
Заблокирован
 Разведчик
Аватар для Evgeniydota
 
Evgeniydota скоро будет известенEvgeniydota скоро будет известенEvgeniydota скоро будет известенEvgeniydota скоро будет известенEvgeniydota скоро будет известен
Регистрация: 24.12.2013
Сообщений: 11
Популярность: 488
Сказал(а) спасибо: 5
Поблагодарили 0 раз(а) в 0 сообщениях
Отправить сообщение для Evgeniydota с помощью Skype™
 
По умолчанию Re: Отображение цен на предметы на сайте Dota2lounge

Цитата:
Сообщение от cheLinkПосмотреть сообщение
Cпасибо, добавить бы функцию отображения цен в кеях.

Можно и не только в кеях, но и в рарках тоже было бы не плохо.Автору спасибо
  Ответить с цитированием
Старый 25.01.2014, 01:35   #5
-= Мастер Света =-
 Капитан
Аватар для cheLink
 
cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(
Регистрация: 03.10.2011
Сообщений: 267
Популярность: 41677
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 113
Поблагодарили 476 раз(а) в 329 сообщениях
 
По умолчанию Re: Отображение цен на предметы на сайте Dota2lounge

Mayhen, Для особо "продвинутых":
[Ссылки могут видеть только зарегистрированные пользователи. ]

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

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

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

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

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

PROFIT!1!11!
________________
Связь только [Ссылки могут видеть только зарегистрированные пользователи. ]

Последний раз редактировалось cheLink; 25.01.2014 в 14:57.
  Ответить с цитированием
Старый 25.01.2014, 03:23   #6
 Разведчик
Аватар для Nordeland
 
Nordeland никому не известный тип
Регистрация: 21.07.2012
Сообщений: 2
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Отображение цен на предметы на сайте Dota2lounge

Жалко, что не указывает цену в инвентаре человека, когда кто-то говорит любая рарка на второй и третей странице (Пример)
P.S. В поиске цена указывается спасибо)
Но иногда вместо цены "Продано" (Ключи)
  Ответить с цитированием
Старый 25.01.2014, 14:58   #7
-= Мастер Света =-
 Капитан
Аватар для cheLink
 
cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(
Регистрация: 03.10.2011
Сообщений: 267
Популярность: 41677
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 113
Поблагодарили 476 раз(а) в 329 сообщениях
 
По умолчанию Re: Отображение цен на предметы на сайте Dota2lounge

Если не ошибаюсь, то этот скрипт тесно связан с трейд площадкой?
И показывает минимальную цену этого предмета там?
________________
Связь только [Ссылки могут видеть только зарегистрированные пользователи. ]
  Ответить с цитированием
Старый 27.01.2014, 19:12   #8
 Разведчик
Аватар для Sniz
 
Sniz никому не известный тип
Регистрация: 08.09.2009
Сообщений: 1
Популярность: 12
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
 
По умолчанию Re: Отображение цен на предметы на сайте Dota2lounge

Не ошибаешься, в шапке скрипта написано, что отображает минимальную цену с Стим Комьюнити Маркет.
  Ответить с цитированием
Старый 28.01.2014, 01:55   #9
 Разведчик
Аватар для satannik
 
satannik блестящий пример для подражанияsatannik блестящий пример для подражанияsatannik блестящий пример для подражанияsatannik блестящий пример для подражанияsatannik блестящий пример для подражанияsatannik блестящий пример для подражанияsatannik блестящий пример для подражанияsatannik блестящий пример для подражанияsatannik блестящий пример для подражанияsatannik блестящий пример для подражанияsatannik блестящий пример для подражания
Регистрация: 02.01.2014
Сообщений: 4
Популярность: 1906
Сказал(а) спасибо: 0
Поблагодарили 32 раз(а) в 18 сообщениях
Отправить сообщение для satannik с помощью ICQ Отправить сообщение для satannik с помощью Skype™
 
По умолчанию Re: Отображение цен на предметы на сайте Dota2lounge

Иногда вместо цены пишет продано. Из-за чего это?
P.s. А так скрипт очень полезный, очень сильно помогает в трейде. Спасибо.
  Ответить с цитированием
Старый 28.01.2014, 13:16   #10
-= Мастер Света =-
 Капитан
Аватар для cheLink
 
cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(cheLink сломал счётчик популярности :(
Регистрация: 03.10.2011
Сообщений: 267
Популярность: 41677
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 113
Поблагодарили 476 раз(а) в 329 сообщениях
 
По умолчанию Re: Отображение цен на предметы на сайте Dota2lounge

Цитата:
Иногда вместо цены пишет продано. Из-за чего это?

Этой вещи нет в продаже на торговой площадке.
________________
Связь только [Ссылки могут видеть только зарегистрированные пользователи. ]
  Ответить с цитированием
Ответ


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Информация] Dota2lounge paradoxx134 Общение и обсуждение Dota 2 10 10.04.2014 12:27
[Информация] CS GO Lounge (отображение цен на предметы) 1pac Counter-Strike 0 20.12.2013 13:44
Развод на Dota2Lounge.ru Nosferatys Баги, читы и статьи по Dota 2 24 03.09.2013 11:04
[Услуги] Купить игровую валюту и предметы, на сайте mmowmr01 Товары/услуги в Сети 0 20.09.2012 10:49
[Услуги] Купить игровую валюту и предметы, на сайте mmowmr01 Товары/услуги в Сети 1 18.09.2012 03:41

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

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

Пишите нам: forum@zhyk.ru
Copyright © 2025 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net