Updates and maintenance for Python websites

Updates and maintenance for Python websites

March 10, 2021

Python was created in 1991 using ABC language elements for the Amoeba distributed operating system. Today many sites are written in Python, with YouTube and Instagram among the most popular. As the language is widespread, updates and maintenance for Python websites are in high demand.

The language got its title from Monty Python's Flying Circus, a British TV show popular in the 1970s. The creator of Python, Dutch developer Guido van Rossum, continues to play an active role in the development of the language. Updated versions are issued every two to three years.

Python's syntax is minimalistic; its interpreter supports practically all platforms and operating systems. The language is used both as a main development language and in the development of new software prototypes. Sometimes Python is used for creating extensions and for application integration.

LEAD-R

Update of a CPA advertising network

Pay per acquisition (PPA or CPA) advertising network. The system is designed to be accessed by hundreds of advertisers and webmasters, and to constantly process thousands of user queries.

  • Frontend application which takes users to their user accounts where they can edit their profile, offers, platforms and distribution, and request money withdrawals. The frontend is divided into three sections:
    • Administrator account: allows for confirmation of offers and platforms. They can also be edited and deleted. Webmasters and advertisers can sign into the administrator account;
    • Advertiser account: offers can be created and edited. Advertisers must place a conversion pixel on their site to confirm conversion;
    • Webmaster account: allows users to create and edit platforms. Webmasters can publish advertisements to every platform and obtain links and banners which can later be added to their site in order to advertise an offer. The advertiser obtains a reward as stated in the offer description for every click-through on the pixel or the link.
  • Backend application which interacts with the database, processes queries from the frontend and queries for adding conversions.
LEAD-R

Ezotericum

Esoteric services

A website for esoteric services enables experts to communicate with customers and provide services online via video chat. Subscribers can communicate with specialists in a public or private chat, receive written explanations, and exchange personal messages with consultants. Experts can create a video chat, view consultation statistics, review written services and entitlements, and access customer lists. The administrative interface enables administrators to manage mailouts, news and user information, and to view service statistics.

Ezotericum main
Ezotericum expert

NOVA TOUR

Search for hotels, villas, apartments and tours

Development of a search engine for hotels, villas, apartments, tours, cruises and a range of transport. The online resource hosts news, articles, and country and city profiles. A parser for searching and loading accommodation from Booking.com. The parser copies the following:

  • Name and address of the accommodation
  • Geolocation
  • Information about rooms and prices
  • Booking conditions and requirements
  • “Star” classification of hotel
NovaTur main

ATI

Bidding to purchase at the lowest price

A web application for bidding, where suppliers offer a low price for their goods, increasing the probability of concluding a contract. Developed for ATI company, founded more than 20 years ago, leading the market of spare parts for trucks, trailers, buses and passenger cars of both foreign and Russian brands.

The supplier and the manager trade through their personal profiles.

  • The ‘Supplier's profile’ is a closed part of the site where the supplier can specify or change his or her price for the product. At the same time, the participation status in the application changes. The ‘Brand’ filter allows one to quickly sort applications regarding the necessary products. According to the results of the trading day, a report on the won bids is generated in an XLS format.
  • The ‘Manager's profile’ is an extension where the ATI manager manages applications, where, for example, he or she might check the correctness of data, change the price, quantity or delivery time, and also interact with suppliers. Adding applications is possible both in manual and automatic modes, using the import function.

Integration with 1C was implemented, which allowed the following processes to be automated:

  • Importing of data relating to new applications;
  • Processing of electronic documents;
  • Report receiving.
ATI customization
ATI auction win
ATI all offers

Bid parser

Maximizing the player’s profit on Scrapy

A web application for parsing bets on sports events from the websites of several bookmakers and for calculating the possibility of betting according to the provided algorithm. Moreover, the mechanism of manually filling in the list of tournament and team comparisons at different bookmakers allows one to link events at different bookmakers together.

PokerAI

Neural network on PyPokerEngine

Creating a neural network for the purpose of a successful game of Texas hold'em, a popular kind of poker. During the development, the PyPokerEngine engine was used and refined to train a neural network and collect statistics on games with an algorithm provided by the customer. We used the Numpy mathematical library, the Pandas library for manipulating tables and time series. The neural network was trained using Deep reinforcement learning. The neural network was trained on games with the implemented algorithm of the opponent and on games featuring a copy of itself (self-training). In the learning process, the neural network makes decisions based on a history of games, and uses the result of the game as a reinforcement, taking into account all stages of the game.

A mechanism for collecting logs was implemented for subsequent analysis of the result of the bot's game using the Hand2Note application.

Chita Today

Audit and update of an online city portal

The owners of the Chita city online portal wanted to rewrite the code entirely. We examined it and came to the conclusion that it would make more sense to correct the existing code. Our specialists transferred the website to a new server, updated the design, and added an events feed. User accounts for organisations have been expanded, registration through social networks has been added, ticket sale functionality has been debugged.

CHita today main
CHita today exhibitions

Banks

Site for a banking service

Development of a new version of the site. Banks save money using SMS notifications. The bank's clients are given a personal manager allowing them to check their account balance, savings and credit transactions in real time. The site has a conventional design, a smartphone version and a version adapted for HD resolution. An English-language version of the site has been created for international promotion of the project. A performance audit was carried out on the site and the necessary corrections have been made. Search engine optimisation (SEO) has been conducted for the site using the IIS SEO Toolkit.

Banks main
Вanks platform

GetRealPrice

Monitoring prices of goods at competitor outlets

Technical support and update for a service analysing around 600 online shops selling consumer electronics, household appliances, baby and toddler items, sporting equipment, building supplies, books, clothes, and jewellery. Among the outlets in the database are a number of major online shops, offering over 1,000,000 items.

Comparison of goods from various sites is conducted automatically with the help of morphological analysis and also manually by moderators. When comparing prices, the currency and units of measurement are taken into consideration.

GetRealPrice shop analyses
GetRealPrice view item
GetRealPrice price difference plot
A comparative analysis of prices from the list of shops is shown as a series of graphs in the user account. Users can also upload a basket of goods for which the prices of goods among competitors can be monitored. Price histories are saved for each item and are available in the form of a diagram on a product card.
GetRealPrice cheapness diagram
GetRealPrice table prices comparison
Price comparison results are presented in a table and standardised or specialised reports requested by customers can be produced in CSV, XLSX and XML formats.