Category methods

olx.category.get_category(main_category=None, sub_category=None, detail_category=None, region=None, search_query=None, url=None, **filters)[source]

Parses available offer urls from given category from every page

Parameters:
  • url – User defined url for OLX page with offers. It overrides category parameters and applies search filters.
  • main_category – Main category
  • sub_category – Sub category
  • detail_category – Detail category
  • region – Region of search
  • search_query – Additional search query
  • filters – Dictionary with additional filters. Following example dictionary contains every possible filter

with examples of it’s values.

Example:
input_dict = {
“[filter_float_price:from]”: 2000, # minimal price “[filter_float_price:to]”: 3000, # maximal price “[filter_enum_floor_select][0]”: 3, # desired floor, enum: from -1 to 11 (10 and more) and 17 (attic) “[filter_enum_furniture][0]”: True, # furnished or unfurnished offer “[filter_enum_builttype][0]”: “blok”, # valid build types: # blok, kamienica, szeregowiec, apartamentowiec, wolnostojacy, loft “[filter_float_m:from]”: 25, # minimal surface “[filter_float_m:to]”: 50, # maximal surface “[filter_enum_rooms][0]”: 2, # desired number of rooms, enum: from 1 to 4 (4 and more) “today”: True, # Should search for offer posted today? “yesterday”: True, # Should search for offers posted yesterday?

}

Returns:List of all offers for given parameters
Return type:list
olx.category.get_offers_for_page(page, main_category=None, sub_category=None, detail_category=None, region=None, search_query=None, url=None, **filters)[source]

Parses offers for one specific page of given category with filters.

Parameters:
  • page (int) – Page number
  • url (str, None) – User defined url for OLX page with offers. It overrides category parameters and applies search filters.
  • main_category (str, None) – Main category
  • sub_category (str, None) – Sub category
  • detail_category (str, None) – Detail category
  • region (str, None) – Region of search
  • filters (dict) – See :meth category.get_category for reference
Returns:

List of all offers for given page and parameters

Return type:

list

olx.category.get_page_count(markup)[source]

Reads total page number from OLX search page

Parameters:markup (str) – OLX search page markup
Returns:Total page number extracted from js script
Return type:int
olx.category.get_page_count_for_filters(main_category=None, sub_category=None, detail_category=None, region=None, search_query=None, url=None, **filters)[source]

Reads total page number for given search filters

Parameters:
  • url (str, None) – User defined url for OLX page with offers. It overrides category parameters and applies search filters.
  • main_category (str, None) – Main category
  • sub_category (str, None) – Sub category
  • detail_category (str, None) – Detail category
  • region (str, None) – Region of search
  • search_query (str, None) – Additional search query
  • filters – See :meth category.get_category for reference
Returns:

Total page number

Return type:

int

olx.category.parse_ads_count(markup)[source]

Reads total number of adds

Parameters:markup (str) – OLX search page markup
Returns:Total ads count from script
Return type:int
olx.category.parse_available_offers(markup, today=None, yesterday=None)[source]

Collects all offer links on search page markup

Parameters:
  • markup (str) – Search page markup
  • today (object) – Should search for offers posted yesterday?
  • yesterday (object) – Should search for offers posted yesterday?
Returns:

Links to offer on given search page

Return type:

list

olx.category.parse_offer_url(markup, today=None, yesterday=None)[source]

Searches for offer links in markup

Offer links on OLX are in class “linkWithHash”. Only www.olx.pl domain is whitelisted.

Parameters:
  • markup (str) – Search page markup
  • today (object) – Should search for offers posted yesterday?
  • yesterday (object) – Should search for offers posted yesterday?
Returns:

Url with offer

Return type:

str