{ "info": { "author": "James Turk ", "author_email": "jturk@sunlightfoundation.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "================\npython-votesmart\n================\n\nPython library for interacting with the Project Vote Smart API.\n\nThe Project Vote Smart API provides detailed information on politicians,\nincluding bios, votes, and NPAT responses.\n(http://votesmart.org/services_api.php)\n\npython-votesmart is a project of Sunlight Labs (c) 2008.\nWritten by James Turk .\n\nAll code is under a BSD-style license, see LICENSE for details.\n\nHomepage: http://pypi.python.org/pypi/python-votesmart/\n\nSource: http://github.com/sunlightlabs/python-votesmart/\n\n\nRequirements\n============\n\npython >= 2.4\n\nsimplejson >= 1.8 (not required with python 2.6, will use built in json module)\n\n\nInstallation\n============\nTo install run\n\n ``python setup.py install``\n\nwhich will install the library into python's site-packages directory.\n\n\nUsage\n=====\n\nTo initialize the api, all that is required is for it to be imported and for an\nAPI key to be defined.\n\n(If you do not have an API key visit http://votesmart.org/services_api.php to\nregister for one.)\n\nImport ``votesmart`` from ``votesmart``:\n \n >>> from votesmart import votesmart\n \nAnd set your API key:\n\n >>> votesmart.apikey = ''\n\n---------------\naddress methods\n---------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Address.html\n\nThe methods ``getCampaign(candidateId)``, ``getCampaignByElection(electionId)``,\nand ``getOffice(candidateId)`` all return a list of ``Address`` objects based on\nthe provided election or candidate id.\n\nExample of getting Nancy Pelosi's office:\n\n >>> addr = votesmart.address.getOffice(26732)[0]\n >>> print addr.street, addr.city, addr.state\n 235 Cannon House Office Building Washington DC\n\n``getCampaignWebAddress(candidateId)`` and ``getOfficeWebAddress(candidateId)``\nreturn a list of ``WebAddress`` objects based on the provided election or\ncandidate id.\n\nExample of getting Nancy Pelosi's web addresses:\n >>> for x in votesmart.address.getOfficeWebAddress(26732):\n ... print x\n https://pelosi.house.gov/contact/email-me.shtml\n http://www.house.gov/pelosi/\n AmericanVoices@mail.house.gov\n\n--------------------\ncandidatebio methods\n--------------------\n\nOfficial API documentation at http://api.votesmart.org/docs/CandidateBio.html\n\n``getBio(candidateId)`` and ``getAddlBio(candidateId)`` get a Bio object and\na series of AddlBio objects.\n\nExample of getting Nancy Pelosi's bio:\n\n >>> bio = votesmart.candidatebio.getBio(26732)\n >>> print 'Born', bio.birthDate, 'in', bio.birthPlace\n Born 03/26/1940 in Baltimore, MD\n \n >>> for fact in votesmart.candidatebio.getAddlBio(26732):\n ... print fact\n Father's Occupation: Congressman for Baltimore, Mayor of Baltimore\n Number of Grandchildren: 5\n\n------------------\ncandidates methods\n------------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Candidates.html\n\n* ``getByOfficeState(officeId, stateId=None, electionYear=None)``\n* ``getByLastname(lastName, electionYear=None)``\n* ``getByLevenstein(lastName, electionYear=None)``\n* ``getByElection(electionId)``\n* ``getByDistrict(districtId, electionYear=None)``\n* ``getByZip(zip5, zip4=None)``\n\nAll six methods return a list containing one or more Candidate objects.\n\nExample of fetching all candidates for the NJ Gubernatorial race:\n\n >>> for candidate in votesmart.candidates.getByOfficeState(3, 'NJ'):\n ... print candidate\n Christopher Christie\n Christopher Christie\n Jon Corzine\n Jon Corzine\n Jason Cullen\n Christopher Daggett\n Kenneth Kaplan\n Joshua Leinsdorf\n Brian Levine\n Alvin Lindsay\n David Meiswinkle\n Richard Merkt\n Gregory Pason\n Kostas Petris\n Gary Steele\n Gary Stein\n\nYou will notice that several candidates appear twice, this is due to an\nunfortunate issue with the Vote Smart API where candidates with multiple\nparties, or election statuses are duplicated. Be careful when consuming\ncandidate data to dedupe using the fields you find useful.\n\n(See http://github.com/sunlightlabs/python-votesmart/issues/closed/#issue/1)\n\n-----------------\ncommittee methods\n-----------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Committee.html\n\n``getTypes()`` returns a listing of all CommitteeType.\n\nExample:\n\n >>> for c in votesmart.committee.getTypes():\n ... print c.committeeTypeId, c.name\n H House\n S Senate\n J Joint\n\n``getCommitteesByTypeState(typeId=None, stateId=None)`` returns a listing of\nCommittee objects, if either typeId isn't specified all committees for that\nstate will be returned, if state isn't specified then congressional committees\nwill be returned.\n\nExample of getting all joint committees:\n\n >>> for c in votesmart.committee.getCommitteesByTypeState(typeId='J'):\n ... print c\n Joint Committee on Printing\n Joint Committee on Taxation\n Joint Committee on the Library\n Joint Economic Committee\n\n``getCommittee(committeeId)`` get extended details on a committee in a\nCommitteeDetail object.\n\nExample of getting details on the House Ways & Means committee:\n\n >>> committee = votesmart.committee.getCommittee(23)\n >>> print committee\n Ways and Means\n\n``getCommitteeMembers(committeeId)`` gets a list of CommitteeMember objects\nrepresenting members of the given committee.\n\nExample of getting all members of the Subcommittee on the Constitution,\nCivil Rights, and Civil Liberties:\n\n >>> for member in votesmart.committee.getCommitteeMembers(4015):\n ... print member\n Representative Trent Franks\n Representative Mike Pence\n Representative Steven Chabot\n Representative John Conyers\n Representative James Randy Forbes\n Representative James Jordan\n Representative Steve King\n Representative Jerrold Nadler\n Representative Mike Quigley\n Representative Robert Scott\n\n\n----------------\ndistrict methods\n----------------\n\nOfficial API documentation at http://api.votesmart.org/docs/District.html\n\n``getByOfficeState(officeId, stateId, districtName=None)`` and ``getByZip(zip5, zip4=None)`` return a list of\nDistrict objects matching the specified criteria.\n\nExample of getting all House districts for North Carolina:\n\n >>> for district in votesmart.district.getByOfficeState(5, 'NC'):\n ... print district\n 1\n 2\n 3\n 4\n 5\n 6\n 7\n 8\n 9\n 10\n 11\n 12\n 13\n\n----------------\nelection methods\n----------------\n\nOfficial API documentation at \n\n``getElection(electionId)`` fetches a single Election object by electionId.\n\nExample of getting details on NC 2008 Gubernatorial election:\n\n >>> election = votesmart.election.getElection(684)\n >>> print election.name\n North Carolina Gubernatorial 2008\n >>> for stage in election.stages:\n ... print stage.name, stage.electionDate\n Primary 2008-05-06\n General 2008-11-04\n\n\n``getElectionByYearState(year, stateId=None)`` and ``getElectionByZip(zip5, zip4=None, year=None)`` get all Election objects\nmatching a given criteria. If stateId is not specified it defaults to national\nelections.\n\nExample of getting details on all elections in North Carolina in 2008:\n\n >>> for election in votesmart.election.getElectionByYearState(2008, 'NC'):\n ... print election\n North Carolina Congressional 2008\n North Carolina Gubernatorial 2008\n North Carolina State Legislative 2008\n North Carolina State Judicial 2008\n\n\n``getStageCandidates(electionId, stageId, party=None, districtId=None, stateId=None)``\ngets a list of StageCandidate objects matching the given criteria.\n\nExample of getting all North Carolina 2008 Gubernatorial primary candidates:\n\n for candidate in votesmart.election.getStageCandidates(684, 'P')\n\n------------------\nleadership methods\n------------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Leadership.html\n\n``getPositions(stateId=None, officeId=None)`` gets a list of LeadershipPosition\nobjects matching the given criteria.\n\nExample of getting all Alaska leadership positions:\n\n >>> for pos in votesmart.leadership.getPositions('AK'):\n ... print pos.officeName, pos.name\n State House Speaker\n State Senate President\n State Senate Majority Leader\n State House Majority Leader\n State Senate Minority Leader\n State House Minority Leader\n\n-------------\nlocal methods\n-------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Local.html\n\n``getCounties(stateId)`` and ``getCities(stateId)`` return lists of counties or\ncities as Locality objects.\n\nExample of getting all cities in Alaska:\n\n >>> for city in votesmart.local.getCities('AK'):\n ... print city.name, city.localId\n Anchorage 1\n Fairbanks 2\n Juneau 4322\n \n``getOfficials(localId)`` gets all Officials known for a given locality.\n\nExample of getting all officials from Anchorage, AK:\n\n >>> for official in votesmart.local.getOfficials(1)[0:1]:\n ... print official\n Mayor Mark Begich\n\n---------------\nmeasure methods\n---------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Measure.html\n\n``getMeasuresByYearState(year, stateId)`` gets a list of Measure objects for\nthe provided year and state.\n\nExample of getting all 2008 Maryland Ballot Measures:\n\n >>> for measure in votesmart.measure.getMeasuresByYearState(2008, 'MD'):\n ... print measure.measureId, measure.title\n 1260 Video Lottery\n 1261 Early Voting\n\n``getMeasure(measureId)`` gets a MeasureDetail object providing more details\nabout a particular measure.\n\nExample of getting more details on Maryland 2008 Early Voting measure:\n\n >>> measure = votesmart.measure.getMeasure(1260)\n >>> print measure.source # just print the url -- summary is long\n http://www.elections.state.md.us/elections/2008/questions/index.html\n\n------------\nnpat methods\n------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Npat.html\n\nNPATs are not converted into objects, the getNpat method is exceptional in that\nit returns a python dict representing the NPAT in question.\n\nExample of checking John McCain's NPAT:\n\n >>> print votesmart.npat.getNpat(53270)['surveyMessage']\n refused to tell citizens where he/she stands on any of the issues addressed in the 2010 Political Courage Test, despite repeated requests from Vote Smart, national media, and prominent political leaders.\n\n\n--e-----------\noffice methods\n--------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Office.html\n\n``getTypes()`` gets a list of OfficeType objects representing all office types\nthat the PVS API tracks.\n\nExample call:\n\n >>> for type in votesmart.office.getTypes():\n ... print type\n P: Presidential and Cabinet\n C: Congressional\n J: Supreme Court\n G: Governor and Cabinet\n K: State Judicial\n L: State Legislature\n S: State Wide\n H: Local Judicial\n N: Local Legislative\n M: Local Executive\n\n``getBranches()`` gets a list of OfficeBranch objects representing all branches\nthat the PVS API tracks.\n\nExample call:\n\n >>> for branch in votesmart.office.getBranches():\n ... print branch\n E: Executive\n L: Legislative\n J: Judicial\n\n``getLevels()`` gets a list of all OfficeLevel objects representing all office\nlevels that the PVS API tracks.\n\nExample call:\n\n >>> for level in votesmart.office.getLevels():\n ... print level\n F: Federal\n S: State\n L: Local\n\n``getOfficesByType(typeId)``, ``getOfficesByLevel(levelId)``,\n``getOfficesByTypeLevel(typeId, levelId)``, and \n``getOfficesByBranchLevel(branchId, levelId)`` return a list of Office objects\nbased on the provided parameters.\n\nExample of getting all Executive titles for the Local level:\n\n >>> for office in votesmart.office.getOfficesByBranchLevel('E', 'L'):\n ... print office\n Freeholder\n Mayor\n Public Advocate\n Council\n Comptroller\n Village Manager\n\n-----------------\nofficials methods\n-----------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Officials.html\n\n* ``getStatewide(stateId=None)``\n* ``getByOfficeState(officeId, stateId=None)``\n* ``getByLastname(lastName)``\n* ``getByLevenstein(lastName)``\n* ``getByElection(electionId)``\n* ``getByDistrict(districtId)``\n* ``getByZip(zip5, zip4=None)``\n\nAll officials methods return a list containing one or more Candidate objects.\n\nExample of fetching all senators from California.\n\n >>> for official in votesmart.officials.getByOfficeState(6, 'CA'):\n ... print official\n Senator Barbara Boxer\n Senator Dianne Feinstein\n\n--------------\nrating methods\n--------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Rating.html\n\n``getCategories(stateId=None)`` gets a list of Category objects for a given\nstate (national if no state provided).\n\nExample of getting a few of the issue categories for New York:\n\n >>> for category in votesmart.rating.getCategories('NY')[0:5]:\n ... print category\n 2: Abortion Issues\n 5: Animal Rights and Wildlife Issues\n 11: Business and Consumers\n 13: Civil Liberties and Civil Rights\n 17: Conservative\n\n``getSigList(categoryId, stateId=None)`` gets a list of Sig objects representing\nall special interest groups associated with a particular category. Optionally\na state can be provided to restrict results to a SIG operating within a\nparticular state.\n\nExample of getting a few groups concerned with Environmental Issues:\n\n >>> for sig in votesmart.rating.getSigList(30)[0:5]:\n ... print sig\n 934: American Lands Alliance\n 1081: American Wilderness Coalition\n 1702: American Wind Energy Association\n 1107: California Park & Recreation Society\n 292: Citizens for Health - Food, Water & Ecological Health Rating\n\n\n``getSig(sigId)`` gets all details available for a special interest group.\n\nExample getting all details for Sierra Club:\n\n >>> sig = votesmart.rating.getSig(657)\n >>> print sig.address, sig.city, sig.state\n 408 C Street, Northeast Washington DC\n \n``getCandidateRating(candidateId, sigId)`` gets a Rating object representing\na candidate's rating by a particular special interest group.\n\nExample checking how Sierra Club rated Nancy Pelosi:\n\n >>> for rating in votesmart.rating.getCandidateRating(26732, 657):\n ... print rating\n\n-------------\nstate methods\n-------------\n\nOfficial API documentation at http://api.votesmart.org/docs/State.html\n\n``getStateIDs()`` returns State objects for all states (and state-like entities)\n\nExample of printing a few of the states returned from getStateIds:\n\n >>> for state in votesmart.state.getStateIDs()[0:5]:\n ... print state\n NA National\n AS American Samoa\n FL Florida\n MI Michigan\n MO Missouri\n\n``getState(stateId)`` returns a StateDetail object with all known details on\na given state.\n\nExample of getting several details about the state of Virginia:\n\n >>> va = votesmart.state.getState('VA')\n >>> print va.population, va.motto\n 7,882,590 (2009) Sic Semper Tyrannis [Thus Always to Tyrants]\n\n-------------\nvotes methods\n-------------\n\nOfficial API documentation at http://api.votesmart.org/docs/Votes.html\n\n``getCategories(year, stateId=None)`` gets a list of Category objects for a\ngiven year and optionally a state (national if no state provided).\n\nExample of getting a few of the national bill categories for 2008:\n\n >>> for category in votesmart.votes.getCategories(2008)[0:5]:\n ... print category\n 2: Abortion Issues\n 4: Agriculture Issues\n 5: Animal Rights and Wildlife Issues\n 10: Budget, Spending and Taxes\n 11: Business and Consumers\n\n``getBill(billId)`` returns a BillDetail object providing details on a particular\nbill.\n\nExample of getting details on HR 7321 Auto Industry Financing bill:\n\n >>> bill = votesmart.votes.getBill(8528)\n >>> print bill.officialTitle\n HR 7321: To authorize financial assistance to eligible automobile manufacturers, and for other purposes.\n >>> for sponsor in bill.sponsors:\n ... print sponsor\n Barney Frank\n >>> for action in bill.actions:\n ... print action\n 2008-12-10 - Introduced\n 2008-12-10 - Passage\n \n\n``getBillAction(actionId)`` returns a BillAction object providing details on\na particular action taken on a bill.\n\nExample of getting details on an action for HR 5576:\n\n >>> print votesmart.votes.getBillAction(8272)\n HR 5576: Making appropriations for the Departments of Transportation, Treasury, and Housing and Urban Development, the Judiciary, District of Columbia, and independent agencies for the fiscal year ending September 30, 2007, and for other purposes.\n\n``getBillActionVotes(actionId)`` and\n``getBillActionVoteByOfficial(actionId, candidateId)`` retrieve lists of Vote\nobjects for a given action (and official).\n\nExample of getting Nancy Pelosi's vote on passage of HR 7321:\n\n >>> print votesmart.votes.getBillActionVoteByOfficial(23069, 26732)\n Pelosi, Nancy: Yea\n\n\nThere are 8 methods that return Bill objects based on various parameters:\n\n* ``getByBillNumber(billNumber)``\n* ``getBillsByCategoryYearState(categoryId, year, stateId=None)``\n* ``getBillsByYearState(year, stateId=None)``\n* ``getBillsByOfficialYearOffice(candidateId, year, officeId=None)``\n* ``getBillsByCandidateCategoryOffice(candidateId, categoryId, officeId=None)``\n* ``getBillsBySponsorYear(candidateId, year)``\n* ``getBillsBySponsorCategory(candidateId, categoryId)``\n* ``getBillsByStateRecent(stateId=None, amount=None)``\n\nExample of getting a few recently tracked bills for 2008:\n\n >>> for bill in votesmart.votes.getBillsByYearState(2008)[-5:]:\n ... print bill\n HR 3997 Financial Asset Purchase Authority\n HR 7321 Automotive Industry Financing\n H Res 982 Contempt Charges\n HR 5501 Funding to Combat AIDS, Malaria, and Tuberculosis\n HR 415 Adding Parts of the Taunton River to the National Wild and Scenic Rivers System\n\n\n``getVetoes(candidateId)`` returns all vetoes for a particular executive.\n\nExample of getting all of George W. Bush's vetoes:\n\n >>> for veto in votesmart.votes.getVetoes(22369):\n ... print veto\n HR 6331 Medicare Bill\n HR 6124 Second Farm, Nutrition, and Bioenergy Act of 2007 (Farm Bill)\n HR 2419 Farm, Nutrition, and Bioenergy Act of 2007 (Farm Bill)\n HR 1585 \n HR 3963 Children's Health Insurance Program Reauthorization Act of 2007 (CHIP)\n HR 976 State Children's Health Insurance Program (CHIP) Reauthorization\n S 5 Stem Cell Research Act of 2007\n HR 1591 Emergency Supplemental Appropriations Bill of 2007 with Iraq Withdrawal Timeline", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/sunlightlabs/python-votesmart/", "keywords": null, "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "python-votesmart", "package_url": "https://pypi.org/project/python-votesmart/", "platform": "any", "project_url": "https://pypi.org/project/python-votesmart/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/sunlightlabs/python-votesmart/" }, "release_url": "https://pypi.org/project/python-votesmart/0.3.3/", "requires_dist": null, "requires_python": null, "summary": "Libraries for interacting with the Project Vote Smart API", "version": "0.3.3" }, "last_serial": 798123, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "c2cdef4e682636d4c443530bccd3e1aa", "sha256": "a19783932483b1cec6dd510721f69adb9ae3ddb0e6f4b75ab57e52cdae2acb69" }, "downloads": -1, "filename": "python-votesmart-0.2.0.tar.gz", "has_sig": false, "md5_digest": "c2cdef4e682636d4c443530bccd3e1aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15914, "upload_time": "2008-12-19T21:33:09", "url": "https://files.pythonhosted.org/packages/f5/76/0b979917c3f64d6952babab2a36974511c612a3da16ffd64396fa7f49022/python-votesmart-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "550f30ac54aef4a6d681837e07729dc5", "sha256": "242ff0dd6962f5a04c56fede277cab510915e44842396ba8f0d77f5c3787c215" }, "downloads": -1, "filename": "python-votesmart-0.2.1.tar.gz", "has_sig": false, "md5_digest": "550f30ac54aef4a6d681837e07729dc5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15878, "upload_time": "2009-02-12T22:47:02", "url": "https://files.pythonhosted.org/packages/df/35/f5736445ae139c8e013a089a06e16162262609f109a2211d5bf147b3f228/python-votesmart-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "c53461e5564363e6815a95df04ffd451", "sha256": "371964e3032aafef999a0b070bd69133ee39be4ac6d351edcdfcc35b3a65a28f" }, "downloads": -1, "filename": "python-votesmart-0.3.0.tar.gz", "has_sig": false, "md5_digest": "c53461e5564363e6815a95df04ffd451", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17025, "upload_time": "2009-08-17T17:33:21", "url": "https://files.pythonhosted.org/packages/2a/aa/58587cbdc297dc9914121ad9adcd886855eb219411fd0651771b7f66a123/python-votesmart-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "d0cae4a9f83d64b2797af88ec013d64b", "sha256": "612016bec7edb7454a7426a33ae193c74c3496e608013e2da462f5e51b26af1b" }, "downloads": -1, "filename": "python-votesmart-0.3.1.tar.gz", "has_sig": false, "md5_digest": "d0cae4a9f83d64b2797af88ec013d64b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16173, "upload_time": "2011-04-12T22:05:38", "url": "https://files.pythonhosted.org/packages/6b/63/b2ccd05c420cbc2ecec36be662cfed59468da997f18c945c19148613ec54/python-votesmart-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "c2971f9129bae738e8c7fc56ba2a3c94", "sha256": "73d89684e4df8ffedea50769d79d44c935d9e6a8419c838838d121a2e2b96a39" }, "downloads": -1, "filename": "python-votesmart-0.3.2.tar.gz", "has_sig": false, "md5_digest": "c2971f9129bae738e8c7fc56ba2a3c94", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12372, "upload_time": "2011-06-17T17:15:47", "url": "https://files.pythonhosted.org/packages/91/db/307c23a0ff6710f5386cf359a5331c2791a120df4318781e9e0f8593d5df/python-votesmart-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "6df7d1b4b55ceeed2099436347a71cd7", "sha256": "df79fdd6f181ae70a3428eaf201d374aa64745ae5175e7b883566717097d4f67" }, "downloads": -1, "filename": "python-votesmart-0.3.3.tar.gz", "has_sig": false, "md5_digest": "6df7d1b4b55ceeed2099436347a71cd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12431, "upload_time": "2012-01-27T16:53:44", "url": "https://files.pythonhosted.org/packages/e3/31/a0538399e0a7a1a2bdb3463fbc15c5826ef86d51cb05193756357e3e2c29/python-votesmart-0.3.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6df7d1b4b55ceeed2099436347a71cd7", "sha256": "df79fdd6f181ae70a3428eaf201d374aa64745ae5175e7b883566717097d4f67" }, "downloads": -1, "filename": "python-votesmart-0.3.3.tar.gz", "has_sig": false, "md5_digest": "6df7d1b4b55ceeed2099436347a71cd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12431, "upload_time": "2012-01-27T16:53:44", "url": "https://files.pythonhosted.org/packages/e3/31/a0538399e0a7a1a2bdb3463fbc15c5826ef86d51cb05193756357e3e2c29/python-votesmart-0.3.3.tar.gz" } ] }