1.3
Improved service block bypass Size reduced by 200 KBpy-bas-automation: Supercharge BAS with Python
-
It would be great if it could be developed as a plugin, providing some functionalities. I think Playwright's wait feature is excellent, and the element node lookup is very convenient as it can be done in various ways. The two BAS tools I mentioned earlier don't perform well in these aspects.
-
@shux said in py-bas-automation: Supercharge BAS with Python:
It would be great if it could be developed as a plugin, providing some functionalities.
Well, BAS has some APIs to communicate with any programming language, such as Node.js, and there are PDF documents available for reference:
https://community.bablosoft.com/topic/4559/как-добавить-новый-встроенный-язык
However, this plugin doesn't fit my needs. I enjoy coding in plain Python, creating tests, and running them. I'm also skilled at identifying and resolving issues in my code using debuggers. I prefer using PyCharm as my go-to coding tool and don't have a strong liking for BAS's built-in features.
I believe this plugin might be more suitable for beginners, but it could be more challenging to develop and may not perform as well.
I started this project with the goal of minimising my use of the BAS IDE and relying more on writing scripts. Essentially, all I require from BAS is web browsers.
-
@shux said in py-bas-automation: Supercharge BAS with Python:
The mouse movement and click functionalities of BAS are a level higher than Playwright. However, most of the other functionalities are not as good as Playwright.
If you are a premium user, please review the source code of BAS for this functionality. There isn't any magic involved, I believe. I did this just a few days ago.
Yes, BAS has a few built-in features to anticipate, but developing a script, as I did several years ago, is more suitable for my needs.
However, if you need a car, create one. I needed a car, so I built one.
-
@shux said in py-bas-automation: Supercharge BAS with Python:
@sergerdn
The core functionalities of BAS are written in C++, which can be difficult to understand for some people.I've been thinking about how to invoke certain actions in BAS from Python code, but I don't have a solution at the moment. I've implemented a one-way logic, but in this case, I'll need to implement two-way communication.
If you have any ideas on how this can be accomplished, I would greatly appreciate hearing from you or any forum member.
-
@shux said in py-bas-automation: Supercharge BAS with Python:
@sergerdn
The mouse movement and click functionalities of BAS are a level higher than Playwright. However, most of the other functionalities are not as good as Playwright.I have implemented the ability to call BAS actions from Python code, such as emulating mouse movements.
Please feel free to ask me about any other features or suggest improvements.
-
@tatwa said in py-bas-automation: Supercharge BAS with Python:
Please add support for free version of fingerprint switcher which is available in BAS as well as the Javascript modules such as fingerprint with pupeeteer and others.
I'd like to make you aware that I primarily maintain that library for personal use, and I never utilize browser profiles with free keys.
As a result, I strongly believe that opting for a basic browser with a free fingerprint is not the ideal choice.
Regrettably, at present, I only support paid fingerprints. Perhaps I will consider changing that logic in the future.
-
@sergerdn Adding free fingerprints won't take much efforts, just change the request to work without the key, also have you added perfectcanvas detection? Add a functionality to detect perfectcanvas requests and autosave it as well as autoreplace it so that the detections can be bypassed.
-
@tatwa said in py-bas-automation: Supercharge BAS with Python:
Adding free fingerprints won't take much efforts, just change the request to work without the key
Well, it's not so easy. I need to rewrite all of my code that relies on the fingerprint because my code expects the fingerprint_key to be both non-empty and valid in every instance.
Additionally, I must rewrite some tests to ensure that both the old and new functionality work as expected.
@tatwa said in py-bas-automation: Supercharge BAS with Python:
also have you added perfectcanvas detection?
Not yet.
-
@tatwa said in py-bas-automation: Supercharge BAS with Python:
@sergerdn Why did you delete the post comparing Bablosoft mouse and keyboard emulation and Playwright emulation? It was useful information.
Because I made some mistakes, I delved deeper into the BAS source code and gained a much better understanding of how many things work.
-
@tatwa said in py-bas-automation: Supercharge BAS with Python:
@sergerdn Are you able to bypass the clientrects issue on creepjs?
I don't have any tasks like that. I am currently working with Chromium browsers using BAS, and I have no intention of making any modifications to it.
I have only а plan is to save and restore browser data, such as cookies, local storage, etc.