noellarkin
Power Member
- Joined
- Mar 14, 2021
- Messages
- 677
- Reaction score
- 1,022
I'm far from an expert on botting, but I've been working on my skillset for close to a year now, and am reasonably proficient when it comes to scaling to a couple thousand bots, using JS based browser automation, and distributing botting operations across multiple computers. I'm still pretty clueless about reverse engineering HTTP requests, but I'm learning 
However, this is definitely NOT how I started out. I didn't have any prior experience in coding, and when I started botting a year ago, I used simple no-code solutions that helped me understand the overall architecture of botting, as well as things like scaling considerations. No-code RPA bots worked quite well for 20-50 bots.
There's usually a new "how do I write a bot for XYZ" question here once a week, this post is for those people.
If you want to write bots quickly and easily, without having to learn how to code, try using the following:
Pulover's Macro Creator:
A UI front-end for AutoHotkey. Great for making simple bots. A good way to start understanding basics like flow of control.
Actiona:
Has better image recognition than Pulover, and basic DB read write functions like writing to INI and CSV.
OpenRPA:
A powerful, fully featured no-code automation solution, has significant system overhead though. It's also complex enough that you might as well start learning coding if you're using it.
Browser Automation Studio:
A good software to start learning how to use things like XPath and Selectors. I never used it much, because by the time I learned XPath and Selectors, I was already coding, but worth a shot.
iMacros:
Great for in-browser automation, and I've seen people scale iMacros way more than you'd expect.
Which One Is The Best:
Test them out. They're all free. This isn't hard to do.
Oh, and this:
Browser Profiles:
The easiest way to manage bot profiles when you're starting out. Browser extensions can help you do things like setting proxies for profiles, bypassing ReCaptcha, and importing/exporting cookies for your profiles.
Transitioning From No-Code Solutions To Coding
You may never have to make that shift. It depends on how much you want to scale your bots. If you're just dealing with 20-50 bots, maybe 100, no-code solutions are all you need. The determining factor is Opportunity Cost: how much time are you willing to spend on learning coding, that you could be using to get new clients, focusing on other elements of marketing and business etc.
However, if you really want to transition out of no-code solutions, the factors that will tip the scales are:
1. Distributed Computing:
At some point, a single computer or VPS will be inadequate. Deploying and syncing bots across multiple systems cannot be done effectively with most no-code solutions.
2. Resource Optimization:
RAM and processor bottlenecks. Coding forces you to learn memory management and how to design your bots for better concurrency. No-Code solutions are also weighed down by things like UI and learning to code allows you to trim the fat from your bots.
3. Database Management:
Good db management for bots is pretty non existent for no-code solutions. The best you can do is write to CSV files. Once you scale your bots, the optimal DB is a centralized server running something like Directus. You're going to have to learn how to design a relational database for your bots and specify your entities so you can scale them, as well as log errors and use the statistical data to find patterns (example: if you're logging your bots and doing the right checks, you may notice that all bots that are using a particular IP are getting their accounts blocked - - this is really hard to do manually once you cross 1k bots). Having good DB management will also help you make consistent "personae" for your bots, making them more realistic, with their own interests, personalities and corresponding cookie profiles.
4. APIs
If you want to start working with APIs, most no-code solutions aren't going to work for you. Even if some of them support API related functions, at that point you're better off just learning how to code.
The way to start learning coding when it comes to bots, is just fire up your browser console (CTRL+SHIFT+K in Firefox), and start learning how to write basic JS to interact with the browser. Something as simple as:
Did it work?
If yes, realise that, instead of manually typing that snippet into the browser console, you can remotely inject that code into the console by opening a WebSocket and using the browser's documented API. For me, learning that browsers had a built-in API for remote injection of code was the point at which I decided to start learning how to code.
Hope this helps people who are in the situation I was in a year ago: no coding experience, and wanting to run a few bots for social media marketing.
This is just a 30,000 ft view. All the details have already been explained on this forum, multiple times, by people far more competent and experienced than I, so use the search feature if you want to learn more.
However, this is definitely NOT how I started out. I didn't have any prior experience in coding, and when I started botting a year ago, I used simple no-code solutions that helped me understand the overall architecture of botting, as well as things like scaling considerations. No-code RPA bots worked quite well for 20-50 bots.
There's usually a new "how do I write a bot for XYZ" question here once a week, this post is for those people.
If you want to write bots quickly and easily, without having to learn how to code, try using the following:
Pulover's Macro Creator:
A UI front-end for AutoHotkey. Great for making simple bots. A good way to start understanding basics like flow of control.
Actiona:
Has better image recognition than Pulover, and basic DB read write functions like writing to INI and CSV.
OpenRPA:
A powerful, fully featured no-code automation solution, has significant system overhead though. It's also complex enough that you might as well start learning coding if you're using it.
Browser Automation Studio:
A good software to start learning how to use things like XPath and Selectors. I never used it much, because by the time I learned XPath and Selectors, I was already coding, but worth a shot.
iMacros:
Great for in-browser automation, and I've seen people scale iMacros way more than you'd expect.
Which One Is The Best:
Test them out. They're all free. This isn't hard to do.
Oh, and this:
Browser Profiles:
The easiest way to manage bot profiles when you're starting out. Browser extensions can help you do things like setting proxies for profiles, bypassing ReCaptcha, and importing/exporting cookies for your profiles.
Transitioning From No-Code Solutions To Coding
You may never have to make that shift. It depends on how much you want to scale your bots. If you're just dealing with 20-50 bots, maybe 100, no-code solutions are all you need. The determining factor is Opportunity Cost: how much time are you willing to spend on learning coding, that you could be using to get new clients, focusing on other elements of marketing and business etc.
However, if you really want to transition out of no-code solutions, the factors that will tip the scales are:
1. Distributed Computing:
At some point, a single computer or VPS will be inadequate. Deploying and syncing bots across multiple systems cannot be done effectively with most no-code solutions.
2. Resource Optimization:
RAM and processor bottlenecks. Coding forces you to learn memory management and how to design your bots for better concurrency. No-Code solutions are also weighed down by things like UI and learning to code allows you to trim the fat from your bots.
3. Database Management:
Good db management for bots is pretty non existent for no-code solutions. The best you can do is write to CSV files. Once you scale your bots, the optimal DB is a centralized server running something like Directus. You're going to have to learn how to design a relational database for your bots and specify your entities so you can scale them, as well as log errors and use the statistical data to find patterns (example: if you're logging your bots and doing the right checks, you may notice that all bots that are using a particular IP are getting their accounts blocked - - this is really hard to do manually once you cross 1k bots). Having good DB management will also help you make consistent "personae" for your bots, making them more realistic, with their own interests, personalities and corresponding cookie profiles.
4. APIs
If you want to start working with APIs, most no-code solutions aren't going to work for you. Even if some of them support API related functions, at that point you're better off just learning how to code.
The way to start learning coding when it comes to bots, is just fire up your browser console (CTRL+SHIFT+K in Firefox), and start learning how to write basic JS to interact with the browser. Something as simple as:
Code:
window.document.location.href='https://www.google.com/'
Did it work?
If yes, realise that, instead of manually typing that snippet into the browser console, you can remotely inject that code into the console by opening a WebSocket and using the browser's documented API. For me, learning that browsers had a built-in API for remote injection of code was the point at which I decided to start learning how to code.
Hope this helps people who are in the situation I was in a year ago: no coding experience, and wanting to run a few bots for social media marketing.
This is just a 30,000 ft view. All the details have already been explained on this forum, multiple times, by people far more competent and experienced than I, so use the search feature if you want to learn more.