Python web scraper for getting Polish political parties support percentage
Project description
APiS-Scraper
PL
Web scraper w Pythonie do pozyskiwania poparcia Polskich partii politycznych!
Oto prosta biblioteka która pobiera strone http://ewybory.eu/sondaze (mam nadzieje że właściciele stronki nie mają nic przeciwko ;), i wyciąga z niej procenty poparcia poszczególnych partii
Możesz je wykorzystać do jakiegoś kreatywnego fajnego projektu :)
Jak korzystać?
- Zainstaluj:
pip3 install -U apis-scraper
- Zaimportuj:
import apis_scraper
- Użyj funkcji
apis_scraper.scrape()
. Zwraca ona słownik, wyglądający tak:
{
'success': True, # Czy się udało, jeśli nie - False
'support' : { # Słownik z % poparcia - liczba z przecinkiem
'pis': 10.0,
'ko': 10.0,
'lewica': 10.0,
'konfederacja': 10.0,
'psl': 10.0,
'polska2050': 10.0
}, # Jeśli coś pójdzie nie tak, wszysktkie poparcia będą -1 a 'success' = False
'growth': { # Czy poparcie rośnie/spada. -1=spada, 0=takie same, 1=rośnie
'pis': 0,
'ko': 0,
'lewica': 0,
'konfederacja': 0,
'psl': 0,
'polska2050': 0
}
}
Przykładowy kod:
import apis_scraper
wyniki = apis_scraper.scrape()
if wyniki['success'] == False:
print('Nie dało rady - nie ma internetu czy coś :/')
exit(-1)
if wyniki['support']['pis'] < wyniki['support']['ko']:
print('Trzeba anulować, bo przegramy...')
Domyślnie, biblioteka zapisuje wyniki w pliku vote-results.json
, żeby nie musiała zawsze pobierać strony z internetu - wyniki i tak zmieniają sie co ~tydzień.
Zapisane wyniki wyczerpują się po 24 godzinach.
Jeśli chcesz to zmienić, możesz:
apis_scraper.scrape(
no_cache=True, # Kompletenie wyłącza zapisywanie w pliku - nie polecam
cache_file_name='dupa12.json', # Zmienia nazwe pliku
cache_expire_time=1*60*60
# Zmienia czas (w sekundach) po którym plik sie wyczerpuje,
# i strona jest pobierana na nowo
)
EN
Python web scraper for getting Polish political parties support percentage!
This is a simple library which downloads site http://ewybory.eu/sondaze (I hope that administators don't mind ;) and scrapes support percentage of each party from it
You can then use it for some fun creative project ;)
How to use?
- Install it:
pip3 install -U apis-scraper
- Import it:
import apis_scraper
- Use function
apis_scraper.scrape()
. It returns a dict, which looks like this:
{
'success': True, # If it was succesfull, if not - False
'support' : { # Dict with % of support - in float
'pis': 10.0,
'ko': 10.0,
'lewica': 10.0,
'konfederacja': 10.0,
'psl': 10.0,
'polska2050': 10.0
}, # If something goes wrong, all supports will be -1 and 'success' = False
'growth': { # Whether support is growing or falling. -1=falling, 0=stays same, 1=growing
'pis': 0,
'ko': 0,
'lewica': 0,
'konfederacja': 0,
'psl': 0,
'polska2050': 0
}
}
Example code:
import apis_scraper
wyniki = apis_scraper.scrape()
if wyniki['success'] == False:
print("Can't do - no internet or something :/")
exit(-1)
if wyniki['support']['pis'] < wyniki['support']['ko']:
print('We need to cancel, or we will lose...')
By default, library saves results in vote-results.json
file, so it doesn't need to download the site every time - results change ~once a week anyway.
Saved results expire after 24h
If you want to change this, you can:
apis_scraper.scrape(
no_cache=True, # Completley disable cache - not recommended
cache_file_name='dupa12.json', # Change file name
cache_expire_time=1*60*60
# Change time (in seconds) after file expires, and site is downloaded again
)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file apis-scraper-1.0.1.tar.gz
.
File metadata
- Download URL: apis-scraper-1.0.1.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbd37999c28fe0f2e15887ca08a97181e559d7b1e8d4b0965507bf49c4a02329 |
|
MD5 | 71518781337b35b917e889b57742006a |
|
BLAKE2b-256 | 1251fb408ec4ac67d301a4b2facf25c85e1c811fbf55de9f9c24a8212dc2e514 |
File details
Details for the file apis_scraper-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: apis_scraper-1.0.1-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3f6a697949bf54c2ca7e25a014ae402461f03fefb89dc70103028370ea182a1a |
|
MD5 | 88a98c3cf43915491042ebb93b92d4db |
|
BLAKE2b-256 | b62040880f53c529c2aa5cb36f9fa00ce61c4346860756443eac5dd92bdc0da5 |