Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 06.07.2015
Сообщений: 7
1

Элементы компонента TWebBrowser (в шапке длиннопост!) Бот для текстовой онлайн-игры

06.07.2015, 00:42. Показов 1396. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет! Извините за столь долго вступление, но без него, наверное никак.

Уже довольно давно я играю в одну простенькую казуальную текстовую браузерную онлайн-игрушку. Как и многие подобные игры, она подразумевает под собой выполнение нескольких однотипных действий, через некий промежуток времени. И вот не так давно, я крепко так призадумался - "А не попробовать ли каким-то образом автоматизировать этот процесс?"

Для начала, я попытался отыскать какие-либо аналоги того, что я назвал бы "Ботом", в данном случае. И несколько вариантов привлекли моё внимание. Но буду человеком, который ну совсем не разбирается в программировании, разобраться в принципе их работы мне не удалось, и я решил попробовать составить собственную концепцию работы программы. В течение нескольких минут я набросал небольшое текстовое описание текущей задачи.

Суть такова - загрузка страницы -> выбор всех ссылок на странице -> если в ссылке есть элемент "Подсказать маршрут" (пример), то нажимаем на неё -> далее идёт проверка условия на наличие совпадений из всех элементов многомерного массива, который мы задаём в самом начале.... и т.д.

Друзья помогли набросать код этого бота на JS (сам я в программировнии полный НОЛЬ).

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
var autopark = ['Подсказать маршрут',
  'Назначить всем лечение',
  'Помыть все машины',
  'Отправить на вызов',
  'Отправить всех на вызовы по событию',
  'Заправить все'
];
 
document.addEventListener("DOMContentLoaded", function(event) {
  var links = document.links;
 
  setInterval(function() {
    [].forEach.call(links, function(link, pos) {
      if (autopark.indexOf(link.text) !== -1) {
        console.log(link.href);
        location.href= link.href;
      }
    });
  }, 3000);
 
});
 
var refr = ['Обновить'];
 
document.addEventListener("DOMContentLoaded", function(event) {
  var links = document.links;
 
  setInterval(function() {
    [].forEach.call(links, function(link, pos) {
      if (refr.indexOf(link.text) !== -1) {
        console.log(link.href);
        location.href= link.href;
      }
    });
  }, 160000);
 
});
Я всё же более или менее понял, каким образом мне можно провернуть своё дельце в Delphi. Я набросал небольшую форму итоговой программы, которая включает в себя такой объект как TWebBrowser..

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

В текущий момент пытаюсь осмыслить и втиснуть в свой сонный мозг мануалы по работе самого объекта WebBrowser в Delphi.

Если честно, дальше уже самому смешно становится. Вот форму зато нарисовал для программы!

Элементы компонента TWebBrowser (в шапке длиннопост!) Бот для текстовой онлайн-игры


Добавлено через 4 минуты
Полагаю, что мне придётся использовать в основе работы что-то навроде вот этого:
Delphi
1
WebBrowser.OleObject.Document.Links
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.07.2015, 00:42
Ответы с готовыми решениями:

Бот для браузерной онлайн игры
Игра: Легенда наследие драконов Хочу автоматизировать монотонный процесс кликания по кнопкам....

Бот для онлайн игры
Доброго времяни суток! Озадачила меня идея написать бота для онлайн игрушки. В общем то и...

Бот для онлайн-игры
Всем привет! Пишу программу, которая могла бы быстро прокачать Волшебную палочку пользователя на...

Бот для браузерной онлайн игры
Всем привет. Хочу написать бота для браузерной онлайн игры. Необходимости в боте нет совсем, это...

1
0 / 0 / 0
Регистрация: 06.07.2015
Сообщений: 7
06.07.2015, 15:09  [ТС] 2
ребят, ну никто не подскажет хотя бы как примерно мне этот код из JS в Delphi конвертировать? Что почитать хотя бы, чтобы самостоятельно это всё сделать?
0
06.07.2015, 15:09
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.07.2015, 15:09
Помогаю со студенческими работами здесь

Ищу команду для создание текстовой онлайн игры!
Ищу команду для создание текстовой онлайн игры! База и некоторые разделы сделаны на основе...

Программа-бот для онлайн игры WoW
Здравствуйте. Пишу программу-бота для онлайн игры (WoW) на C# используя библиотеку BlackMagic для...

Как написать бот для онлайн игры
Допустим что есть некая онлайн игрушка. ЧТо нужно прочитать посмотреть, что б понять как написать...

Бот для онлайн игры (Wow, lineage, RF Online и т.д.)
Всем привет! Подскажите можно ли написать бота для онлайн игры в VB Net? Если да то можно ссылку...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Аутентификация на сайте с помощью формы
bytestream 21.01.2025
В современном цифровом мире безопасная аутентификация становится краеугольным камнем защиты веб-приложений и пользовательских данных. Каждый день миллионы людей используют различные онлайн-сервисы,. . .
Как получить индекс в цикле for в Python
bytestream 21.01.2025
При работе с коллекциями данных в Python часто возникает необходимость не только получить доступ к элементам последовательности, но и знать их позицию в процессе итерации. Индексация в циклах. . .
Как определить адрес, из которого локальный репозиторий Git был клонирован
bytestream 21.01.2025
В современной разработке программного обеспечения система контроля версий Git стала неотъемлемой частью рабочего процесса. При работе с Git разработчики часто сталкиваются с необходимостью. . .
Какая разница между операторами == и === в сравнениях в JavaScript
bytestream 21.01.2025
В мире веб-разработки JavaScript занимает особое место как динамический язык программирования, предоставляющий разработчикам широкий набор инструментов для создания интерактивных веб-приложений. . . .
Из чего и как собрать свой домашний кинотеатр
bt_guru 21.01.2025
Создание домашнего кинотеатра: от идеи до реализации В современном мире домашний кинотеатр стал неотъемлемой частью комфортного жилого пространства, предоставляя возможность наслаждаться. . .
Ошибки стиральных машин
bt_guru 21.01.2025
Современные стиральные машины представляют собой сложные электронные устройства, оснащенные множеством датчиков и систем контроля. Они способны самостоятельно определять вес загруженного белья,. . .
Копирование (маппинг) объектов в JavaScript
bytestream 21.01.2025
В современной разработке программного обеспечения копирование объектов представляет собой фундаментальную операцию, которая требует особого внимания и понимания. Маппинг объектов в JavaScript – это. . .
Как работать с Apache Kafka в C# .NET
bytestream 21.01.2025
Apache Kafka представляет собой распределенную платформу потоковой передачи данных, которая произвела революцию в области обработки больших объемов информации в реальном времени. Эта система,. . .
Как использовать RabbitMQ в C# .NET
bytestream 21.01.2025
RabbitMQ представляет собой мощный брокер сообщений, который эффективно решает эту задачу, обеспечивая надежную передачу данных между множеством приложений. Этот инструмент реализует протокол AMQP. . .
Как объединить последние коммиты в Git
bytestream 21.01.2025
В мире разработки программного обеспечения система контроля версий Git стала незаменимым инструментом для управления исходным кодом. Одной из наиболее полезных, но порой сложных для освоения функций. . .
Как запушить новую локальную ветку (branch) в удалённый репозиторий Git и отслеживать её
bytestream 21.01.2025
В современной разработке программного обеспечения система контроля версий Git стала неотъемлемым инструментом для эффективного управления кодом и организации командной работы. Одной из ключевых. . .
Как создать директорию и все родительские директории, указанные в пути, с помощью Python
bytestream 21.01.2025
Python предоставляет мощные инструменты для работы с файловой системой через встроенные модули os и pathlib, которые значительно упрощают процесс манипуляции директориями. Эти модули содержат. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru