This blog shows important Python libraries for scraping and processing information like pricing, IBAN, and date. It is difficult to process this data type; however, with proper libraries, you can easily do that.
It might look like an easy job to parse currencies, dates, and IBANs. However, think about all the different locales, combinations, and formats. It parses German or USA format dates, scraping decimal values of prices in USD, EUR, or Rupees. An easy job can initially can get very messy!
Fortunately, there are Python libraries that we can utilize rather than coding the rules ourselves.
It is part of preparing data, which is vital for all Machine Learning applications.
Suggested library — dateparser
Here, we parse a date in the German format; we could provide a hint of the library regarding the language for date formats:
d = dateparser.parse('2.Mai 2020', languages=['de'])
The results look great:
We could try and pass all invalid dates to a library:
d = dateparser.parse('2.Abc 2020', languages=['de'])
Here, we would get such results that are ideal:
It’s time to parse the date without providing any hint about a language:
d = dateparser.parse('2020.12.8')
This works well also:
Suggested library — price-parser
This could get more complicated with pricing parsing, just think about different currencies as well as different ways about how the pricing is written.
Let’s take a test using EUR price as well as comma like a decimal extractor:
p = Price.fromstring("-114,47 €")
The result - we find a number as well as currency symbol:
Parse pricing in Russian rubles:
p = Price.fromstring("3 500 руб")
Parse pricing in US dollars:
p = Price.fromstring("$1499.99")
One more example, without any currency symbol, however with comma like a thousand extractor:
p = Price.fromstring("199,999.00")
The amount gets parsed appropriately:
In case, we utilize the point like a decimal extractor:
p = Price.fromstring("199.999,00")
The results are correct also:
Suggested library — schwifty
Test German IBAN number:
i = IBAN('DE89 3704 0044 0532 0130 00')
Country(alpha_2='DE', alpha_3='DEU', name='Germany', numeric='276', official_name='Federal Republic of Germany')
Test invalid IBAN:
i = IBAN('DE89 3704')
except Exception as e:
Result like it might be anticipated in the case:
Invalid IBAN length
The step of data preparation is among the crucial steps in Machine Learning. Appropriate use of accessible libraries permits streamlining data processing. This blog teaches you how to procedure dates, currencies, and IBANs using web scraping services. For more details, contact Actowiz Solutions now!