René's URL Explorer Experiment


Title: Python & APIs: A Winning Combo for Reading Public Data – Real Python

Open Graph Title: Python & APIs: A Winning Combo for Reading Public Data – Real Python

Description: In this tutorial, you'll learn what APIs are and how to consume them using Python. You'll also learn some core concepts for working with APIs, such as status codes, HTTP methods, the requests library, and much more. You'll also see a few examples of real-life APIs and how to consume them.

Open Graph Description: In this tutorial, you'll learn what APIs are and how to consume them using Python. You'll also learn some core concepts for working with APIs, such as status codes, HTTP methods, the requests library, and much more. You'll also see a few examples of real-life APIs and how to consume them.

Mail addresses
?subject=Python article for you&body=Python & APIs: A Winning Combo for Reading Public Data on Real Python https://realpython.com/python-api/

Opengraph URL: https://realpython.com/python-api/

X: @realpython

direct link

Domain: realpython.com


Hey, it has json ld scripts:
{
  "@context": "http://schema.org",
  "@type": "Article",
  "headline": "Python & APIs: A Winning Combo for Reading Public Data",
  "image": {
    "@type": "ImageObject",
    "url": "https://files.realpython.com/media/Consuming-APIs-in-Python_Watermarked.718777293942.jpg",
    "width": 1920,
    "height": 1080
  },
  "mainEntityOfPage": {
    "@type": "WebPage",
    "@id": "https://realpython.com/python-api/",
    "lastReviewed": "2025-02-01",
    "author": {
      "@type": "Person",
      "name": "Pedro Pregueiro",
      "image": "https://realpython.com/cdn-cgi/image/width=329,height=329,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/PAH_6585_smaller_face.902576e9bcf0.jpeg",
      "url": "https://realpython.com/team/ppregueiro/",
      "affiliation": {
        "@type": "Organization",
        "@id": "https://realpython.com/#organization",
        "name": "Real Python",
        "url": "https://realpython.com",
        "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
      }
    },
    "reviewedBy": [
      {
        "@type": "Person",
        "name": "Aldren Santos",
        "image": "https://realpython.com/cdn-cgi/image/width=500,height=500,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/Aldren_Santos_Real_Python.6b0861d8b841.png",
        "url": "https://realpython.com/team/asantos/",
        "affiliation": {
          "@type": "Organization",
          "@id": "https://realpython.com/#organization",
          "name": "Real Python",
          "url": "https://realpython.com",
          "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
        }
      },
      {
        "@type": "Person",
        "name": "Brenda Weleschuk",
        "image": "https://realpython.com/cdn-cgi/image/width=320,height=320,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/IMG_3324_1.50b309355fc1.jpg",
        "url": "https://realpython.com/team/bweleschuk/",
        "affiliation": {
          "@type": "Organization",
          "@id": "https://realpython.com/#organization",
          "name": "Real Python",
          "url": "https://realpython.com",
          "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
        }
      },
      {
        "@type": "Person",
        "name": "Geir Arne Hjelle",
        "image": "https://realpython.com/cdn-cgi/image/width=800,height=800,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/gahjelle.470149ee709e.jpg",
        "url": "https://realpython.com/team/gahjelle/",
        "affiliation": {
          "@type": "Organization",
          "@id": "https://realpython.com/#organization",
          "name": "Real Python",
          "url": "https://realpython.com",
          "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
        }
      },
      {
        "@type": "Person",
        "name": "Jon Fincher",
        "image": "https://realpython.com/cdn-cgi/image/width=336,height=336,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/Running_headshot.b3e2d17c6828.jpg",
        "url": "https://realpython.com/team/jfincher/",
        "affiliation": {
          "@type": "Organization",
          "@id": "https://realpython.com/#organization",
          "name": "Real Python",
          "url": "https://realpython.com",
          "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
        }
      },
      {
        "@type": "Person",
        "name": "Joanna Jablonski",
        "image": "https://realpython.com/cdn-cgi/image/width=800,height=800,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/jjablonksi-avatar.e37c4f83308e.jpg",
        "url": "https://realpython.com/team/jjablonski/",
        "affiliation": {
          "@type": "Organization",
          "@id": "https://realpython.com/#organization",
          "name": "Real Python",
          "url": "https://realpython.com",
          "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
        }
      },
      {
        "@type": "Person",
        "name": "Jacob Schmitt",
        "image": "https://realpython.com/cdn-cgi/image/width=400,height=400,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/profile-small_js.2f4d0d8da1ca.jpg",
        "url": "https://realpython.com/team/jschmitt/",
        "affiliation": {
          "@type": "Organization",
          "@id": "https://realpython.com/#organization",
          "name": "Real Python",
          "url": "https://realpython.com",
          "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
        }
      },
      {
        "@type": "Person",
        "name": "Kate Finegan",
        "image": "https://realpython.com/cdn-cgi/image/width=400,height=400,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/VZxEtUor_400x400.7169c68e3950.jpg",
        "url": "https://realpython.com/team/kfinegan/",
        "affiliation": {
          "@type": "Organization",
          "@id": "https://realpython.com/#organization",
          "name": "Real Python",
          "url": "https://realpython.com",
          "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
        }
      },
      {
        "@type": "Person",
        "name": "Martin Breuss",
        "image": "https://realpython.com/cdn-cgi/image/width=456,height=456,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/martin_breuss_python_square.efb2b07faf9f.jpg",
        "url": "https://realpython.com/team/mbreuss/",
        "affiliation": {
          "@type": "Organization",
          "@id": "https://realpython.com/#organization",
          "name": "Real Python",
          "url": "https://realpython.com",
          "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
        }
      }
    ]
  },
  "datePublished": "2025-02-01T14:00:00+00:00",
  "dateModified": "2025-02-01T14:09:24.612122+00:00",
  "publisher": {
    "@type": "Organization",
    "@id": "https://realpython.com/#organization",
    "name": "Real Python",
    "url": "https://realpython.com",
    "logo": {
      "@type": "ImageObject",
      "url": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png",
      "width": 512,
      "height": 512
    },
    "description": "Real Python is a leading provider of online Python education and one of the largest language-specific online communities for software developers. It publishes high-quality learning resources, such as tutorials, books, and courses to an audience of millions of developers, data scientists, and machine learning engineers each month.",
    "slogan": "Become a Python Expert",
    "email": "info@realpython.com",
    "sameAs": [
      "https://github.com/realpython",
      "https://www.youtube.com/realpython",
      "https://twitter.com/realpython",
      "https://x.com/realpython",
      "https://www.linkedin.com/company/realpython-com/",
      "https://www.facebook.com/learnrealpython",
      "https://www.instagram.com/realpython",
      "https://www.tiktok.com/@realpython.com"
    ]
  },
  "author": {
    "@type": "Person",
    "name": "Pedro Pregueiro",
    "image": "https://realpython.com/cdn-cgi/image/width=329,height=329,fit=crop,gravity=auto,format=auto/https://files.realpython.com/media/PAH_6585_smaller_face.902576e9bcf0.jpeg",
    "url": "https://realpython.com/team/ppregueiro/",
    "affiliation": {
      "@type": "Organization",
      "@id": "https://realpython.com/#organization",
      "name": "Real Python",
      "url": "https://realpython.com",
      "logo": "https://realpython.com/static/real-python-logo-square-512.157ae6bf64ed.png"
    }
  },
  "description": "In this tutorial, you'll learn what APIs are and how to consume them using Python. You'll also learn some core concepts for working with APIs, such as status codes, HTTP methods, the requests library, and much more. You'll also see a few examples of real-life APIs and how to consume them.",
  "hasPart": {
    "@type": "FAQPage",
    "mainEntity": [
      {
        "@type": "Question",
        "name": "What is an API?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "

An API, or Application Programming Interface, acts as a communication layer that allows different systems to interact with each other without needing to understand the internal workings of each system.

" } }, { "@type": "Question", "name": "Is Python good for consuming APIs?", "acceptedAnswer": { "@type": "Answer", "text": "

Yes, Python is excellent for consuming APIs, especially with libraries like requests that simplify making HTTP requests and handling responses.

" } }, { "@type": "Question", "name": "What are REST and GraphQL APIs?", "acceptedAnswer": { "@type": "Answer", "text": "

REST (Representational State Transfer) APIs use standard HTTP methods and focus on resources and actions, while GraphQL allows clients to specify exactly what data they need, providing more flexibility in queries.

" } }, { "@type": "Question", "name": "How do you handle API authentication in Python?", "acceptedAnswer": { "@type": "Answer", "text": "

You handle API authentication in Python by using methods like API keys, OAuth, or Basic Authentication, often sending credentials in headers or as query parameters.

" } } ] } }

authorReal Python
twitter:cardsummary_large_image
twitter:imagehttps://files.realpython.com/media/Consuming-APIs-in-Python_Watermarked.718777293942.jpg
og:imagehttps://files.realpython.com/media/Consuming-APIs-in-Python_Watermarked.718777293942.jpg
twitter:creator@realpython
og:typearticle

Links:

https://realpython.com/
Start Herehttps://realpython.com/start-here/
Learn Python https://realpython.com/python-api/
Python Tutorials →In-depth articles and video courseshttps://realpython.com/search?kind=article&kind=course&order=newest
Learning Paths →Guided study plans for accelerated learninghttps://realpython.com/learning-paths/
Quizzes & Exercises →Check your learning progresshttps://realpython.com/quizzes/
Browse Topics →Focus on a specific area or skill levelhttps://realpython.com/tutorials/all/
Community Chat →Learn with other Pythonistashttps://realpython.com/community/
Office Hours →Live Q&A calls with Python expertshttps://realpython.com/office-hours/
Podcast →Hear what’s new in the world of Pythonhttps://realpython.com/podcasts/rpp/
Books →Round out your knowledge and learn offlinehttps://realpython.com/products/books/
Reference →Concise definitions for common Python termshttps://realpython.com/ref/
Code Mentor →BetaPersonalized code assistance & learning toolshttps://realpython.com/mentor/
Unlock All Content →https://realpython.com/account/join/
More https://realpython.com/python-api/
Learner Storieshttps://realpython.com/learner-stories/
Python Newsletterhttps://realpython.com/newsletter/
Python Job Boardhttps://www.pythonjobshq.com
Meet the Teamhttps://realpython.com/team/
Become a Tutorial Writerhttps://realpython.com/write-for-us/
Become a Video Instructorhttps://realpython.com/become-an-instructor/
Searchhttps://realpython.com/search
https://realpython.com/search
Joinhttps://realpython.com/account/join/
Sign‑Inhttps://realpython.com/account/login/?next=%2Fpython-api%2F
Browse Topicshttps://realpython.com/tutorials/all/
Guided Learning Pathshttps://realpython.com/learning-paths/
Basicshttps://realpython.com/search?level=basics
Intermediatehttps://realpython.com/search?level=intermediate
Advancedhttps://realpython.com/search?level=advanced
aihttps://realpython.com/tutorials/ai/
algorithmshttps://realpython.com/tutorials/algorithms/
apihttps://realpython.com/tutorials/api/
best-practiceshttps://realpython.com/tutorials/best-practices/
careerhttps://realpython.com/tutorials/career/
communityhttps://realpython.com/tutorials/community/
databaseshttps://realpython.com/tutorials/databases/
data-sciencehttps://realpython.com/tutorials/data-science/
data-structureshttps://realpython.com/tutorials/data-structures/
data-vizhttps://realpython.com/tutorials/data-viz/
devopshttps://realpython.com/tutorials/devops/
djangohttps://realpython.com/tutorials/django/
dockerhttps://realpython.com/tutorials/docker/
editorshttps://realpython.com/tutorials/editors/
flaskhttps://realpython.com/tutorials/flask/
front-endhttps://realpython.com/tutorials/front-end/
gamedevhttps://realpython.com/tutorials/gamedev/
guihttps://realpython.com/tutorials/gui/
machine-learninghttps://realpython.com/tutorials/machine-learning/
newshttps://realpython.com/tutorials/news/
numpyhttps://realpython.com/tutorials/numpy/
projectshttps://realpython.com/tutorials/projects/
pythonhttps://realpython.com/tutorials/python/
stdlibhttps://realpython.com/tutorials/stdlib/
testinghttps://realpython.com/tutorials/testing/
toolshttps://realpython.com/tutorials/tools/
web-devhttps://realpython.com/tutorials/web-dev/
web-scrapinghttps://realpython.com/tutorials/web-scraping/
Table of Contentshttps://realpython.com/python-api/#toc
Getting to Know APIshttps://realpython.com/python-api/#getting-to-know-apis
SOAP vs REST vs GraphQLhttps://realpython.com/python-api/#soap-vs-rest-vs-graphql
APIs and requests: A Match Made in Heavenhttps://realpython.com/python-api/#apis-and-requests-a-match-made-in-heaven
Calling Your First API Using Pythonhttps://realpython.com/python-api/#calling-your-first-api-using-python
Endpoints and Resourceshttps://realpython.com/python-api/#endpoints-and-resources
Request and Responsehttps://realpython.com/python-api/#request-and-response
Status Codeshttps://realpython.com/python-api/#status-codes
HTTP Headershttps://realpython.com/python-api/#http-headers
Response Contenthttps://realpython.com/python-api/#response-content
HTTP Methodshttps://realpython.com/python-api/#http-methods
Query Parametershttps://realpython.com/python-api/#query-parameters
Learning Advanced API Conceptshttps://realpython.com/python-api/#learning-advanced-api-concepts
Authenticationhttps://realpython.com/python-api/#authentication
Paginationhttps://realpython.com/python-api/#pagination
Rate Limitinghttps://realpython.com/python-api/#rate-limiting
Consuming APIs With Python: Practical Exampleshttps://realpython.com/python-api/#consuming-apis-with-python-practical-examples
Searching and Fetching Trending GIFshttps://realpython.com/python-api/#searching-and-fetching-trending-gifs
Searching Google Bookshttps://realpython.com/python-api/#searching-google-books
Conclusionhttps://realpython.com/python-api/#conclusion
Further Readinghttps://realpython.com/python-api/#further-reading
Frequently Asked Questionshttps://realpython.com/python-api/#frequently-asked-questions
https://realpython.com/feedback/survey/article/python-api/liked/?from=article-sidebar
https://realpython.com/feedback/survey/article/python-api/disliked/?from=article-sidebar
Pedro Pregueirohttps://realpython.com/python-api/#author
https://realpython.com/python-api/#reader-comments
intermediatehttps://realpython.com/tutorials/intermediate/
apihttps://realpython.com/tutorials/api/
Getting to Know APIshttps://realpython.com/python-api/#getting-to-know-apis
SOAP vs REST vs GraphQLhttps://realpython.com/python-api/#soap-vs-rest-vs-graphql
APIs and requests: A Match Made in Heavenhttps://realpython.com/python-api/#apis-and-requests-a-match-made-in-heaven
Calling Your First API Using Pythonhttps://realpython.com/python-api/#calling-your-first-api-using-python
Endpoints and Resourceshttps://realpython.com/python-api/#endpoints-and-resources
Request and Responsehttps://realpython.com/python-api/#request-and-response
Status Codeshttps://realpython.com/python-api/#status-codes
HTTP Headershttps://realpython.com/python-api/#http-headers
Response Contenthttps://realpython.com/python-api/#response-content
HTTP Methodshttps://realpython.com/python-api/#http-methods
Query Parametershttps://realpython.com/python-api/#query-parameters
Learning Advanced API Conceptshttps://realpython.com/python-api/#learning-advanced-api-concepts
Authenticationhttps://realpython.com/python-api/#authentication
Paginationhttps://realpython.com/python-api/#pagination
Rate Limitinghttps://realpython.com/python-api/#rate-limiting
Consuming APIs With Python: Practical Exampleshttps://realpython.com/python-api/#consuming-apis-with-python-practical-examples
Searching and Fetching Trending GIFshttps://realpython.com/python-api/#searching-and-fetching-trending-gifs
Searching Google Bookshttps://realpython.com/python-api/#searching-google-books
Conclusionhttps://realpython.com/python-api/#conclusion
Further Readinghttps://realpython.com/python-api/#further-reading
Frequently Asked Questionshttps://realpython.com/python-api/#frequently-asked-questions
Remove adshttps://realpython.com/account/join/
Python REST APIs With Flask, Connexion, and SQLAlchemyhttps://realpython.com/flask-connexion-rest-api/
Click here to get the source code you’ll usehttps://realpython.com/bonus/consuming-apis-python-code/
https://realpython.com/python-api/#getting-to-know-apis
Remove adshttps://realpython.com/account/join/
https://realpython.com/python-api/#soap-vs-rest-vs-graphql
GraphQLhttps://graphql.org/
What is SOAP?https://www.altexsoft.com/blog/engineering/what-is-soap-formats-protocols-message-structure-and-how-soap-is-different-from-rest/
What is REST?https://restfulapi.net/
API 101: SOAP vs. RESThttps://blog.postman.com/soap-vs-rest/
Introduction to GraphQLhttps://graphql.org/learn/
Comparing API Architectural Styles: SOAP vs REST vs GraphQL vs RPChttps://www.altexsoft.com/blog/soap-vs-rest-vs-graphql-vs-rpc/
GitHubhttps://docs.github.com/en/graphql
Shopifyhttps://shopify.dev/docs/admin-api/graphql/reference
https://realpython.com/python-api/#apis-and-requests-a-match-made-in-heaven
requestshttps://realpython.com/python-requests/
https://realpython.com/python-api/#calling-your-first-api-using-python
random user datahttps://randomuser.me/
generating random user datahttps://randomuser.me/
importhttps://realpython.com/python-import/
Remove adshttps://realpython.com/account/join/
https://realpython.com/python-api/#endpoints-and-resources
a bit laterhttps://realpython.com/python-api/#authentication
documentationhttps://thecatapi.com/
the Cat APIhttps://thecatapi.com/
the official documentationhttps://developers.thecatapi.com/
/breeds endpointhttps://developers.thecatapi.com/view-account/ylX4blBYT9FaoVd6OhvR?report=gpN-ReBkp
breeds endpointhttps://developers.thecatapi.com/view-account/ylX4blBYT9FaoVd6OhvR?report=aZyiLrsCh#tag/Breeds
Exploring HTTPS With Pythonhttps://realpython.com/python-https/
Remove adshttps://realpython.com/account/join/
https://realpython.com/python-api/#request-and-response
HTTP messageshttps://developer.mozilla.org/en-US/docs/Web/HTTP/Messages
https://realpython.com/python-api/#status-codes
Status codeshttps://developer.mozilla.org/en-US/docs/Web/HTTP/Status
https://files.realpython.com/media/python-api-404.0c13de12f9ff.png
https://realpython.com/python-api/#http-headers
Mozilla’s extended listhttps://developer.mozilla.org/en-US/docs/Web/HTTP/Headers
https://realpython.com/python-api/#custom-headers
weren’t meant to be usedhttps://frenxi.com/http-headers-you-dont-expect/
dictionaryhttps://realpython.com/python-dicts/
https://realpython.com/python-api/#content-type
JSONhttps://realpython.com/python-json/
encodinghttps://realpython.com/python-encodings-guide/
chartshttps://www.image-charts.com/
Image-Charts APIhttps://documentation.image-charts.com/
hundredshttp://www.iana.org/assignments/media-types/media-types.xhtml
Remove adshttps://realpython.com/account/join/
https://realpython.com/python-api/#response-content
Unicodehttps://realpython.com/python-encodings-guide/
byteshttps://realpython.com/python-strings/#bytes-objects
raw byteshttps://realpython.com/python-strings/#bytes-objects
Python data structurehttps://realpython.com/python-data-structures/
filehttps://realpython.com/read-write-files-python/
https://realpython.com/python-api/#http-methods
differences between PUT and PATCHhttps://medium.com/backticks-tildes/restful-api-design-put-vs-patch-4a061aa3ed0b
Mozilla’s documentationhttps://developer.mozilla.org/en-US/docs/Web/HTTP/Methods
status codehttps://realpython.com/python-api/#status-codes
Remove adshttps://realpython.com/account/join/
https://realpython.com/python-api/#query-parameters
documentationhttps://randomuser.me/documentation#gender
nationalityhttps://randomuser.me/documentation#nationalities
Ragamuffin breedhttps://en.wikipedia.org/wiki/Ragamuffin_cat
variablehttps://realpython.com/python-variables/
Remove adshttps://realpython.com/account/join/
https://realpython.com/python-api/#learning-advanced-api-concepts
authenticationhttps://realpython.com/python-api/#authentication
paginationhttps://realpython.com/python-api/#pagination
rate limitinghttps://realpython.com/python-api/#rate-limiting
https://realpython.com/python-api/#authentication
GitHub APIhttps://docs.github.com/en/rest
Twitter APIhttps://developer.twitter.com/en/docs
Instagram APIhttps://developers.facebook.com/docs/instagram-basic-display-api
https://realpython.com/python-api/#api-keys
NASAhttps://api.nasa.gov/
astronomy picture of the dayhttps://apod.nasa.gov/apod/astropix.html
Earth Polychromatic Imaging Camera (EPIC)https://epic.gsfc.nasa.gov/
Mars Rover Photo APIhttps://github.com/chrisccerami/mars-photo-api
main API pagehttps://api.nasa.gov/
Mars rovershttps://realpython.com/python-news-march-2021/#python-lands-on-mars
https://files.realpython.com/media/RRB_646869036EDR_F0810628RHAZ00337M_.27f1657ce733.jpeg
camerahttps://github.com/chrisccerami/mars-photo-api#cameras
https://realpython.com/python-api/#oauth-getting-started
OAuthhttps://oauth.net/
https://files.realpython.com/media/Screenshot_2020-07-28_13.55.42.4c9c66dba2be.png
settings pagehttps://www.facebook.com/settings?tab=applications&ref=settings
httpbinhttps://httpbin.org/
https://realpython.com/python-api/#oauth-a-practical-example
GitHub documentationhttps://docs.github.com/en/developers/apps/creating-an-oauth-app
GitHub APIhttps://docs.github.com/en/rest
GitHub documentationhttps://docs.github.com/en/developers/apps/authorizing-oauth-apps#1-request-a-users-github-identity
GitHub’s documentationhttps://docs.github.com/en/developers/apps/authorizing-oauth-apps#2-users-are-redirected-back-to-your-site-by-github
returnhttps://realpython.com/python-return-statement/
User APIhttps://docs.github.com/en/rest/reference/users#get-the-authenticated-user
printhttps://realpython.com/python-print/
https://files.realpython.com/media/Screenshot_2020-11-28_at_20.16.51_v2.1eba580fd72f.png
What the Heck is OAuth?https://developer.okta.com/blog/2017/06/21/what-the-heck-is-oauth
OAuth 2 Simplifiedhttps://aaronparecki.com/oauth-2-simplified/
OAuth 2.0 Authorization Frameworkhttps://auth0.com/docs/protocols/oauth2
Remove adshttps://realpython.com/account/join/
https://realpython.com/python-api/#pagination
paginationhttps://realpython.com/django-pagination/#pagination-in-the-wild
questions pagehttps://stackoverflow.com/questions
https://files.realpython.com/media/Screenshot_2020-11-24_at_00.06.03.eed31538b0f1.png
eventshttps://docs.github.com/en/rest/reference/activity#list-public-events
first URLhttps://api.github.com/events?per_page=1&page=0
https://realpython.com/python-api/#rate-limiting
documentationhttps://docs.github.com/en/rest/overview/resources-in-the-rest-api#rate-limiting
https://realpython.com/python-api/#consuming-apis-with-python-practical-examples
Click here to get the source code you’ll usehttps://realpython.com/bonus/consuming-apis-python-code/
Remove adshttps://realpython.com/account/join/
https://realpython.com/python-api/#searching-and-fetching-trending-gifs
GIPHYhttps://giphy.com/
quickstart documentationhttps://developers.giphy.com/docs/api#quick-start-guide
https://realpython.com/python-api/#step-1-create-a-giphy-account
GIPHY accounthttps://giphy.com/join
https://files.realpython.com/media/Screenshot_2020-11-28_at_21.13.24.ede3d2b7387f.png
https://realpython.com/python-api/#step-2-create-an-application
Developer Dashboardhttps://developers.giphy.com/dashboard/
https://files.realpython.com/media/Screenshot_2020-11-28_at_21.14.26.e56e627fdff1.png
Create an Apphttps://developers.giphy.com/dashboard/?create=true
https://files.realpython.com/media/Screenshot_2020-11-28_at_21.15.03.8ccb09e3bad8.png
https://files.realpython.com/media/Screenshot_2020-11-28_at_21.15.30.fedd4516cb4e.png
https://realpython.com/python-api/#step-3-fetching-the-api-key
https://files.realpython.com/media/Screenshot_2020-11-28_at_21.15.53.3638568c518f.png
API Explorerhttps://developers.giphy.com/explorer
query parametershttps://realpython.com/python-api/#query-parameters
appropriate contenthttps://developers.giphy.com/docs/optional-settings#rating
iteratehttps://realpython.com/python-for-loop/
terminalhttps://realpython.com/terminal-commands/
https://realpython.com/python-api/#searching-google-books
ISBNhttps://en.wikipedia.org/wiki/International_Standard_Book_Number
Google Books APIhttps://developers.google.com/books
volumes endpointhttps://developers.google.com/books/docs/v1/using#WorkingVolumes
OAuth knowledgehttps://developers.google.com/books/docs/v1/using#auth
Remove adshttps://realpython.com/account/join/
https://realpython.com/python-api/#conclusion
Click here to get the source code you’ll usehttps://realpython.com/bonus/consuming-apis-python-code/
https://realpython.com/python-api/#further-reading
GitHub Public APIs repositoryhttps://github.com/public-apis/public-apis
Public APIshttps://public-apis.io/
Any APIhttps://any-api.com/
https://realpython.com/python-api/#frequently-asked-questions
https://realpython.com/feedback/survey/article/python-api/liked/?from=article-footer
https://realpython.com/feedback/survey/article/python-api/disliked/?from=article-footer
https://realpython.com/team/ppregueiro/
» More about Pedrohttps://realpython.com/team/ppregueiro/
https://realpython.com/team/asantos/
Aldrenhttps://realpython.com/team/asantos/
https://realpython.com/team/bweleschuk/
Brendahttps://realpython.com/team/bweleschuk/
https://realpython.com/team/gahjelle/
Geir Arnehttps://realpython.com/team/gahjelle/
https://realpython.com/team/jfincher/
Jonhttps://realpython.com/team/jfincher/
https://realpython.com/team/jjablonski/
Joannahttps://realpython.com/team/jjablonski/
https://realpython.com/team/jschmitt/
Jacobhttps://realpython.com/team/jschmitt/
https://realpython.com/team/kfinegan/
Katehttps://realpython.com/team/kfinegan/
https://realpython.com/team/mbreuss/
Martinhttps://realpython.com/team/mbreuss/
Level Up Your Python Skills »https://realpython.com/account/join/?utm_source=rp_article_footer&utm_content=python-api
Level Up Your Python Skills »https://realpython.com/account/join/?utm_source=rp_article_footer&utm_content=python-api
https://realpython.com/feedback/survey/article/python-api/liked/?from=article-comments
https://realpython.com/feedback/survey/article/python-api/disliked/?from=article-comments
LinkedInhttps://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Frealpython.com%2Fpython-api%2F
Twitterhttps://twitter.com/intent/tweet/?text=Interesting%20Python%20article%20on%20%40realpython%3A%20Python%20%26%20APIs%3A%20A%20Winning%20Combo%20for%20Reading%20Public%20Data&url=https%3A%2F%2Frealpython.com%2Fpython-api%2F
Blueskyhttps://bsky.app/intent/compose?text=Interesting%20Python%20article%20on%20%40realpython.com%3A%20Python%20%26%20APIs%3A%20A%20Winning%20Combo%20for%20Reading%20Public%20Data%20https%3A%2F%2Frealpython.com%2Fpython-api%2F
Facebookhttps://facebook.com/sharer/sharer.php?u=https%3A%2F%2Frealpython.com%2Fpython-api%2F
Get tips for asking good questionshttps://realpython.com/python-beginner-tips/#tip-9-ask-good-questions
get answers to common questions in our support portalhttps://support.realpython.com
Real Python Community Chathttps://realpython.com/community/
“Office Hours” Live Q&A Sessionhttps://realpython.com/office-hours/
intermediatehttps://realpython.com/tutorials/intermediate/
apihttps://realpython.com/tutorials/api/
Python and REST APIs: Interacting With Web Serviceshttps://realpython.com/api-integration-in-python/?utm_source=realpython&utm_medium=web&utm_campaign=related-post&utm_content=python-api
Python's Requests Library (Guide)https://realpython.com/python-requests/?utm_source=realpython&utm_medium=web&utm_campaign=related-post&utm_content=python-api
Working With JSON Data in Pythonhttps://realpython.com/python-json/?utm_source=realpython&utm_medium=web&utm_campaign=related-post&utm_content=python-api
A Close Look at a FastAPI Example Applicationhttps://realpython.com/fastapi-python-web-apis/?utm_source=realpython&utm_medium=web&utm_campaign=related-post&utm_content=python-api
Python REST APIs With Flask, Connexion, and SQLAlchemy – Part 1https://realpython.com/flask-connexion-rest-api/?utm_source=realpython&utm_medium=web&utm_campaign=related-post&utm_content=python-api
https://realpython.com/account/signup/?intent=continue_reading&utm_source=rp&utm_medium=web&utm_campaign=rwn&utm_content=v1&next=%2Fpython-api%2F
Continue »https://realpython.com/account/signup/?intent=continue_reading&utm_source=rp&utm_medium=web&utm_campaign=rwn&utm_content=v1&next=%2Fpython-api%2F
Sign-Inhttps://realpython.com/account/login/?next=/python-api/
Start Herehttps://realpython.com/start-here/
Learning Resourceshttps://realpython.com/search
Code Mentorhttps://realpython.com/mentor/
Python Referencehttps://realpython.com/ref/
Python Cheat Sheethttps://realpython.com/cheatsheets/python/
Support Centerhttps://support.realpython.com/
Learning Pathshttps://realpython.com/learning-paths/
Quizzes & Exerciseshttps://realpython.com/quizzes/
Browse Topicshttps://realpython.com/tutorials/all/
Live Courseshttps://realpython.com/live/
Bookshttps://realpython.com/books/
Podcasthttps://realpython.com/podcasts/rpp/
Newsletterhttps://realpython.com/newsletter/
Community Chathttps://realpython.com/community/
Office Hourshttps://realpython.com/office-hours/
Learner Storieshttps://realpython.com/learner-stories/
Plans & Pricinghttps://realpython.com/account/join/
Team Planshttps://realpython.com/account/join-team/
For Businesshttps://realpython.com/account/join-team/inquiry/
For Schoolshttps://realpython.com/account/join-team/education-inquiry/
Reviewshttps://realpython.com/learner-stories/
About Ushttps://realpython.com/about/
Teamhttps://realpython.com/team/
Mission & Valueshttps://realpython.com/mission/
Editorial Guidelineshttps://realpython.com/editorial-guidelines/
Sponsorshipshttps://realpython.com/sponsorships/
Careershttps://realpython.workable.com
Press Kithttps://realpython.com/media-kit/
Merchhttps://realpython.com/merch
https://www.youtube.com/realpython
https://x.com/realpython
https://www.linkedin.com/company/realpython-com
https://www.facebook.com/LearnRealPython
https://github.com/realpython/
Privacy Policyhttps://realpython.com/privacy-policy/
Terms of Usehttps://realpython.com/terms/
Securityhttps://realpython.com/security/
Contacthttps://realpython.com/contact/
https://realpython.com/

Viewport: width=device-width, initial-scale=1, shrink-to-fit=no, viewport-fit=cover

Robots: max-image-preview:large


URLs of crawlers that visited me.