Just Use Pydantic

Sdílet
Vložit
  • čas přidán 9. 05. 2023
  • Pydantic is great for data validation and parsing, giving us a much better option that standard for working with data in Python. In this video I will show you how to create Pydantic models from shopify product json where we don't want to include large amounts of the data. by adding in to our models only the fields we are interested in we can omit the rest of the data and avoid having to write and rewrite complex indexing and gets on our dictionary, improving readability and usage
    Scraper API www.scrapingbee.com/?fpr=jhnwr
  • Věda a technologie

Komentáře • 26

  • @oerickmuller
    @oerickmuller Před 7 měsíci

    Awesome content, concise and helpful. Thanks!

  • @graczew
    @graczew Před rokem +5

    Good content as always. 👍👍👍

  • @ericxls93
    @ericxls93 Před rokem +2

    Will try this! Thank you. I have use the Spotify rest, but somehow I find their API super convoluted… getting sales and refunds by day is an industry 🤦‍♂️

  • @aktiecase
    @aktiecase Před měsícem +1

    this is so good, thank you

  • @user-mh2zy2gs4w
    @user-mh2zy2gs4w Před rokem +2

    I have tried the same method using the dataclasses. I got issue that when declaring the `Product` dataclass, it requires to declare all the attributes in the JSON response, not just `ID` and `title` like in your example.

  • @ErikS-
    @ErikS- Před 9 měsíci +1

    brilliant example!

  • @HermannWinter
    @HermannWinter Před 4 měsíci +1

    excellent 👍

  • @ricardor8044
    @ricardor8044 Před rokem

    What font do you use ? It looks so unique

  • @julians.2597
    @julians.2597 Před 5 měsíci +2

    it's great, but it very slow, by an order of magnitude more than plain classes, simple namespace, named tuples, dataclasses, attrs, etc.
    So use it for parsing and validation for which it's made and great, but don't use it as a general purpose data structure.

  • @techatival
    @techatival Před rokem

    Sholdn't be the price mapped to a float instead of a string?

  • @thebuggser2752
    @thebuggser2752 Před 6 měsíci

    Neat!

  • @Julian-sn9vc
    @Julian-sn9vc Před rokem +6

    Hi! Great video on scraping Shopify data into Pydantic Models! I'm considering using Pydantic with an API and SqlAlchemy for my project. Could you create a follow-up video on mapping Pydantic Models to SqlAlchemy models and then writing the data into a database? This would be incredibly helpful. Thanks!

    • @JohnWatsonRooney
      @JohnWatsonRooney  Před rokem +2

      Great thanks! Sure i will do a follow up to include sqla!

    • @Hellbending
      @Hellbending Před 10 měsíci +1

      Might be worth doing using fastAPI then ;)

    • @hoeszyslak6989
      @hoeszyslak6989 Před 7 měsíci

      just save your self tons of quality of life issues and use attrs and cattrs instead of pydantic + you get good performance while still keeping your project entirely python... the new pydantic uses rust to solve some problems that attrs already solved ages ago. And it's more reliable because NASA uses it on it's mars rover.

  • @MrPsychoTreatment
    @MrPsychoTreatment Před rokem +2

    Hi John, great tutorial! Is there any reason to use Pydantic over Dataclasses?

    • @AnthonyBecker9
      @AnthonyBecker9 Před 2 měsíci

      Pydantic gives you powerful data validation and error messages.

  • @younesboukroun3060
    @younesboukroun3060 Před 7 měsíci

    pwerful yeh

  • @SAMWELLFPS
    @SAMWELLFPS Před rokem

    please do a Bet 305 odds and how to scrap it

  • @roshansirohi3191
    @roshansirohi3191 Před rokem

    I m not getting didi website data getting 501 response can u give me suggestions please

  • @yafethtb
    @yafethtb Před rokem +3

    Can we do this with dataclasses instead?

    • @JohnWatsonRooney
      @JohnWatsonRooney  Před rokem +2

      Yes but you don’t get validation

    • @yafethtb
      @yafethtb Před rokem +2

      @@JohnWatsonRooney is it like __post_init in dataclasses?

    • @user-mh2zy2gs4w
      @user-mh2zy2gs4w Před rokem

      I have tried the same method using the dataclasses. I got issue that when declaring the `Product` dataclass, it requires to declare all the attributes in the JSON response, not just `ID` and `title` like in your example.

  • @ZainAli-hq1gu
    @ZainAli-hq1gu Před rokem

    upload the on your repo