Skip to main content

What are updates for and why are they paid?

A-Parser is constantly evolving. With the release of new versions, improvements and fixes are introduced. In this article, we will discuss what updates are, how they differ from the license, what role they play, and why they need to be paid for.

License ≠ updates

When you purchase A-Parser, you receive a perpetual license to use it and 3-6 months of free updates depending on the license purchased. After the free update period ends, you can update to the latest stable version available and continue to use the scraper to its full extent — as far as the version available at the end of the subscription allows.

To renew your subscription, you can purchase one of three update packages: for 3 months, one year, and lifetime for $49, $149, and $399 respectively.

You do not have to pay for updates constantly. There is no need to pay for the period during which there was no update subscription.

Why are updates paid?

🐞 Fixes

Websites and various resources develop quite quickly. Any, even the most minor changes on the part of the target site can affect parsing. This happens because scrapers are initially tailored to a certain structure, and changes in layout, protection, or other various internal mechanics lead to incorrect data in the results, their complete absence, and other errors. Parsing itself negatively affects the servers allocated for websites: requests grow and, accordingly, the load increases. Services losing profit are forced to find a way out of the situation, which leads to the emergence of new types of protection and the development of old ones.

With each such change, adjustments need to be made. Each one involves analyzing the problem, finding a solution, and implementing it.

All changes can be viewed on the forum

🧰 Every built-in scraper undergoes a system of internal tests daily. If the test queries are successful, the resulting values are checked. A failed test signals errors present in the scraper. Thanks to the tests, we respond promptly to breakdowns and immediately start working on their correction.

Some of the most complex, in-demand, and therefore priority for us are scrapers for search engines Yandex and Google. Each consists of many parts, each solving a specific task. Among them are preparing a request, forming headers, obtaining the source code of the page, various kinds of formatting results, working with CAPTCHA, etc. All this needs to be maintained in working order. The scraper includes variables containing all the necessary data from the page: search results, advertisements, related keywords, and other values. They are extracted using regular expressions, assuming the presence of a certain document structure on the page (order of elements, their types, classes, and other various attributes). With a critical change in this structure, the regex, which fit its previous version, stops extracting the required fragment, and the scraper is sent for revision.

✨ Improvements

In addition to maintaining the functionality of built-in scrapers, each release adds new features and various improvements that affect both performance and the amount of data obtained. The build includes new scrapers, and new methods are implemented in the JavaScript API.

You can view all the changes here.

The absence of timely updates provokes incorrect operation of built-in scrapers. There can be various reasons. For example, the page layout might have changed. A scraper that hasn't been updated tries to collect data with old regular expressions, not adapted to the new format. As a consequence, there are failed requests, various kinds of errors appear, and there is no result.

Using the Google Scraper as an Example

A user contacted support with the following issue:

I'm collecting Google search results with your proxies. Set to 300 attempts per request. All requests are failing. Everything was working yesterday.

At first glance, it seems that the problem is with the proxies, but tests with identical settings and requests on the latest version are successful. Therefore, the problem lies elsewhere. During the dialogue, it turns out that the user has an outdated version of A-Parser. This is the real reason for the incorrect operation of the Google scraper.

Using the Yandex Scraper as an Example

In Yandex, the page layout with the captcha changed, which caused it to stop being deciphered. On the forum, in the Tasks section, a relevant topic was created.

Example of the problem in SE::Yandex

The next morning, a fix was released. The task was closed and moved to the Next release section. There, you can find topics of all the fixes and improvements that will be included in the next stable version.

Accordingly, in A-Parser, which did not receive the latest update, the captcha in Yandex was no longer being deciphered.

Conclusion

By purchasing A-Parser, you receive a perpetual license to use the software and a package of free updates for a specific period. If necessary, after the subscription expires, you can renew it by purchasing one of the proposed update packages.

Websites are unstable – scrapers require constant adjustments and improvements. Maintaining their working condition is our job. It is a priority task that we put a lot of effort into in order to release working fixes as quickly as possible. The cost of updates justifies the effort behind it. Each release is not just a list of fixes and improvements – it's months of focused work by the A-Parser team.