Skip to content

nalgeon/podsearch-py

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
April 6, 2021 19:24
July 3, 2020 21:16
May 14, 2020 23:59
May 13, 2020 10:07
April 6, 2021 19:24
April 6, 2021 19:28

Podcast searcher

Search any podcast in iTunes library

PyPI Version Build Status Code Coverage Code Quality

podsearch finds podcasts via iTunes Search API.

Search parameters:

  • query - search string (name, author etc)
  • country - ISO alpha-2 country code (us, de, fr etc), default: us
  • limit - maximum number or search results, default: 5

Returned attributes for each podcast:

  • id - iTunes ID (e.g., 979020229)
  • name - podcast name (Talk Python To Me)
  • author - author name (Michael Kennedy (@mkennedy))
  • url - Apple Podcasts URL (https://podcasts.apple.com/us/podcast/id979020229)
  • feed - podcast RSS URL (https://talkpython.fm/episodes/rss)
  • category - main category (Technology)
  • image - 600x600px image URL (https://is4-ssl.mzstatic.com/image/.../600x600bb.jpg)
  • country - ISO alpha-3 country code (USA)
  • episode_count - episode count this year (26)

Installation

pip install podsearch

Usage

Search podcasts by query:

>>> import podsearch
>>> podcasts = podsearch.search("python", country="us", limit=10)
>>> podcasts[0].name
'Talk Python To Me'
>>> podcasts[0].author
'Michael Kennedy (@mkennedy)'
>>> podcasts[0].url
'https://podcasts.apple.com/us/podcast/id979020229'

Retrieve podcast by iTunes ID:

>>> import podsearch
>>> podcast = podsearch.get(979020229)
>>> podcast.name
'Talk Python To Me'

Development setup

$ python3 -m venv env
$ . env/bin/activate
$ make deps
$ tox

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Make sure to add or update tests as appropriate.

Use Black for code formatting and Conventional Commits for commit messages.

Changelog

License

MIT