Свежие темы форума
Ключи к Norton/Symantec Антивирус №3 (Продолжение) в 07:51
Генератор прямых ссылок в 07:18
[Vn5socks.net] Service Seller Socks Good в 06:45
Генератор паролей по маске в 00:02
Как вы попали на Free-Pass.Ru? в 07:27
Как возник ваш ник? [истории возникновения ваших ников] в 07:26
Тема для киноманов! (Обсуждение фильмов, сериалов и др.) в 07:26
Продажа аккаунтов - соц сети, почтовые, фрихостинг в 18:59
Раздача аккаунтов,ключей,cookies,JavaScript на ФО в 10:38
Раздача аккаунтов от лучших Онлайн казино. в 20:33
Популярные темы форума
Ключи к Norton/Symantec Антивирус 9999
Ключи к Norton/Symantec Антивирус №2 (Продолжение) 9734
[Dichvusocks.us] Service Seller Socks Good 7010
[Vn5socks.net] Service Seller Socks Good 6838
Ключи к Norton/Symantec Антивирус №3 (Продолжение) 2438
Ключи для Windows 8.1 1901
CS:GO сайты с халявой (UPD 52 сайтa) 1833
Раздача игровых ключей на gleam.io Free(,бесплатно ) 1205
Раздача аккаунтов,ключей,cookies,JavaScript на ФО 1186
Промо-акции: различные полезные программы 1050
Интересные статьи и лайфхаки
Как узнать возраст человека вконтакте, если он скр...
Как узнать возраст человека вконтакте, если он скр...
Как узнать возраст человека вконтакте, если он скрыт? Достаточно легко! В данной статье мы вам расскажем, как
Как получить WINDOWS 10 бесплатно, на халяву?
Как получить WINDOWS 10 бесплатно, на халяву?
Windows 10 - самая последняя операционная система (OC), созданная корпорацией Microsoft. Данный продукт интере
Как активировать Windows 7, 8, 10 в 2016 году?
Как активировать Windows 7, 8, 10 в 2016 году?
В данной статье мы вам расскажем о том, как бесплатно произвести активацию Windows версий 7, 8, 10. В статье в
Ответить в теме Новая тема Новый опрос
Сейчас вы просматриваете тему

Автоматизируем покупку предметов на торговой площадке Steam

  • Страница 1 из 1
  • 1
Автоматизируем покупку предметов на торговой площадке Steam
Ананас
Автор темы
Дата: Воскресенье, 26.01.2014, 13:52 | Сообщение # 1


Привет Фри пас

Думаю, что многие из Вас задумывались о автоматизации каких-либо процессов. Ведь заниматься «рутиной» работой мало кому интересно.

Я попробовал написать автоматическую покупку предметов на торговой площадке Steam на чистом JavaScript, и поделиться этим довольно интересным опытом с 
Фрипасовцами 
Исполнение пользовательского JavaScript.
Для исполнения пользовательского JavaScript я использовал расширение для браузера Mozilla Firefox под названием «Greasemonkey». Аналогичное расширение существует для браузера Google Chrome — «TamperMonkey», и, заметил Beta-версию для Opera.

После установки расширения, мы сможем исполнить JavaScript-код на страницах веб-сайтов.

Для начала, создадим новый скрипт, нажав на пункт «Создать скрипт...» и заполнив необходимые поля.

Мы сделаем полную эмуляцию поведения человека, дабы, в дальнейшем, избежать каких-либо проблем.

Напишем и разберем следующий код:
// ==UserScript==// @author Evansive// @name Steam market autobuy bot// @namespace Evansive// @description Покупает вещи в Steam-маркете// @version 1// @grant none// ==/UserScript==// Массив с предметами. item_id — название предмета, указанное в URL на торговой площадке, price: цена в разменных единицах, то есть, например, в копейках или центах.var items = [
{item_id: 'SSG%2008%20|%20Lichen%20Dashed%20(Field-Tested)', price: '210'}, {item_id: 'SG%20553%20|%20Tornado%20(Field-Tested)', price: '150'}, {item_id: 'Winter%20Offensive%20Weapon%20Case', price: '2700'}, {item_id: 'Operation%20Bravo%20Case', price: '100'}, {item_id: 'M4A4%20|%20Faded%20Zebra%20(Field-Tested)', price: '100'}, {item_id: 'CS:GO%20Weapon%20Case', price: '200'} ],
// Массив с возможными ошибками. messages = {
logged: "AutoBuy: Вы не авторизованы на сайте." }
;

// Проверяем, авторизован ли пользователь на сайте Steam.if(!g_bLoggedIn) { el = document.createElement("div"); el.setAttribute("style", "background-color: #fff;"); el.innerHTML = "<b><font color='#eb0000'>" + messages.logged + "</font><b>"; // После шапки выводим напоминание, что необходимо авторизоваться на сайте перед покупкой. insertAfter(document.getElementById("global_header"), el);}

// Получаем название предмета из ссылки, которую открыл пользователь.regexp = new RegExp("listings\/[0-9]+\/(.*)");var match = location.href.match(regexp);if(match) { // В случае, если открыл ссылку на предмет из торговой площадки. // В случае, если Steam вывел какую-либо ошибку в процессе загрузки цен на предметы, перезагрузим страницу. if(document.getElementsByClassName('market_listing_table_message').length) { console.log("Проблема с загрузкой предметов."); location.reload();
return false; }

var market_price = document.getElementsByClassName('market_listing_price market_listing_price_with_fee')[0].innerHTML, // Получаем цену на предмет в строковом формате. marketPrice = market_price.replace(/[A-Za-zА-Яа-я.]+/, market_price); // Убираем обозначение денежной единицы из цены. ;

marketPrice = parseFloat(marketPrice) * 100; // Преобразуем денежную единицу в разменную. (Копейка, цент и так далее)
for(var i = 0; i < items.length; i++) { if(match[1] == items.item_id) { // В случае, если название предмета, который мы в данный момент смотрим, совпадает с предметом из массива. if(marketPrice <= items.price) { // Если цена меньше той, что указана в массиве для данного предмета. document.getElementsByClassName('item_market_action_button_green')[0].click(); // Нажимаем кнопку покупки. document.getElementById('market_buynow_dialog_accept_ssa').checked = true; // Ставим галочку и принимаем условия пользовательского соглашения. window.setInterval(function(){ document.getElementById('market_buynow_dialog_purchase').getElementsByTagName('span')[0].click(); // Покупаем предмет. window.setInterval(function() { window.location = window.location.href.substring(0, window.location.href.indexOf('#')); // Успех, перезагружаем страницу. }, 5000); }, 1000); console.log("Отлично, покупаем предмет."); break; }
else { window.setInterval(function() { window.location = window.location.href.substring(0, window.location.href.indexOf('#')); }, 3000); console.log("Нет предметов для покупки."); break; }
}
}
}

function insertAfter(referenceNode, newNode) { referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
}

Сразу скажу, что для работы скрипта, необходимо открыть вкладку с предметом из массива в браузере, после чего запустить расширение «Greasemonkey». Соответственно, таким образом, мы можем автоматизировать весь процесс работы Steam-аукциона, сделав, например, автоматическую продажу предметов по определенным ценам и требованиям.

Надеюсь, что вы сможете сделать что-то увлекательное и поделитесь своим опытом .Всем удачи всем пока ))))


Сообщение отредактировал Ананас - Воскресенье, 26.01.2014, 13:53

Поделиться этой темой:
 
Бот
Аватарка бота
Интересное
Не видишь блоки? - Отключи AdBlock
ktyomka
Дата: Понедельник, 23.06.2014, 21:28 | Сообщение # 2
Полезный скрипт!
 
tishhenko_03
Дата: Пятница, 20.02.2015, 19:32 | Сообщение # 3
норм
 
export4618
Дата: Среда, 25.03.2015, 16:50 | Сообщение # 4
Может есть у кого скрипт для сайта с рулеткой?. Смысл такой посетитель нажимает на кнопку и ему рандомно выпадает скидка на товар представленный на сайте.
 
  • Страница 1 из 1
  • 1
Поиск:

Чтобы оставить свое сообщение в данной теме, пожалуйста,
зарегистрируйтесь или войдите через логин и пароль / одну из социальных сетей.
Пожалуйста, зарегистрируйтесь! или войдите под любой соц.сетью
Вы сможете видеть всю халяву на сайте, писать сообщения и создавать темы на форуме!
Войти Зарегистрироваться