Python client for RealClearPolitics.
Project description
Python client for RealClearPolitics.
Install
pip install realclearpolitics
Usage
usage: rcp [-h] [--output [OUTPUT]] [--generate-table] url [url ...] positional arguments: url The url of the polling data. optional arguments: -h, --help show this help message and exit --output [OUTPUT] The output file name. --generate-table Pass this argument to generate a table.
Examples
Get the US general election results.
rcp http://www.realclearpolitics.com/epolls/2016/president/us/general_election_trump_vs_clinton-5491.html --output general.csv
Download multiple polls.
rcp http://www.realclearpolitics.com/epolls/2016/president/us/general_election_trump_vs_clinton-5491.html \ > https://www.realclearpolitics.com/epolls/other/president_trump_job_approval_economy-6182.html \ > https://www.realclearpolitics.com/epolls/other/president_trump_job_approval_foreign_policy-6183.html
API Usage
Search for Fox News poll numbers for Trump:
from rcp import get_polls, get_poll_data
from pprint import pprint
polls = get_polls(candidate="Trump", pollster="Fox")
for poll in polls:
td = get_poll_data(poll['url'])
pprint(td)
The will return a dictionary structured like this:
[
{
'data': [{'Biden (D)': '49.6',
'Date': '3/27 - 7/9',
'MoE': '--',
'Poll': 'RCP Average',
'Sample': '--',
'Spread': 'Biden +8.5',
'Trump (R)': '41.1'},
...
}],
'poll': 'https://www.realclearpolitics.com/epolls/2020/president/us/general_election_trump_vs_biden-6247.html'
]
Write a poll to CSV:
from rcp import get_polls, get_poll_data, to_csv
polls = get_polls(candidate="Biden")[0]
data = get_poll_data(polls['url'], csv_output=True)
to_csv('output.csv', data)
Create table:
from rcp import get_poll_data
from prettytable import PrettyTable
x = PrettyTable()
td = get_poll_data(
"https://www.realclearpolitics.com/epolls/other/president_trump_job_approval-6179.html"
)
x.field_names = list(td[0]["data"][0].keys())
x.align = "l"
for row in td[0]["data"]:
x.add_row(row.values())
print(x)
Project details
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 realclearpolitics-1.4.0.tar.gz
.
File metadata
- Download URL: realclearpolitics-1.4.0.tar.gz
- Upload date:
- Size: 4.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fdc1a865fb3606c8692d4db1f4e0294b6793af2a52ef63753c627cb66c6bfe21 |
|
MD5 | 7beea64a84c2c87d9e3996eacac631e9 |
|
BLAKE2b-256 | c51f0a736b5fdd8f1538cde898209af9414a7fd0cb16660b18fbe37befd464c7 |
File details
Details for the file realclearpolitics-1.4.0-py2.py3-none-any.whl
.
File metadata
- Download URL: realclearpolitics-1.4.0-py2.py3-none-any.whl
- Upload date:
- Size: 4.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 59da79127a8ad33cca3236ce0c2acf75eb37b72f041bbae2ecde69c1142affb0 |
|
MD5 | 1dcea4eb0e0fe9550592cc9d53c8794a |
|
BLAKE2b-256 | 56eb5db2722b89c6198ad5f6fac4cebc7a491345269a77aa6a4fa46192183228 |