Build and sell your own API $$$ (super simple!)

Sdílet
Vložit
  • čas přidán 16. 07. 2024
  • ⭐ Sign up for my Full Stack Developer Course: www.codewithania.com
    You need to sign up here to follow along: bit.ly/rapidapi-hub
    In this video I show you how to make a profitable API and sell it on the RapidAPI Hub.
    00:00 Introduction
    03:20 Overview of the final product
    03:44 Creating a RapidAPI Account
    04:21 Creating our Node.js Project
    15:25 Routing in Express
    21:44 Getting a news source
    30:15 Getting multiple news sources
    38:42 Getting an Individual new source by parameter
    48:59 Refactoring and Prep for Deployment
    49:39 Creating our API on RapidAPI
    50:33 Deploying to Heroku
    53:44 Adding our Endpoints to RapidAPI
    56:39 Adding Pricing Plans
    57:36 Publishing our API
    Final code available here: github.com/kubowania/climate-...
    ___
    ⭐ Sign up for my Full Stack Developer Course: www.codewithania.com
    ⭐ Use promo code ANIAKUBOW for 3 months free of WebStorm IDE here (I get no commission from this link, but am in a partnership): jb.gg/get_webstorm
    ⭐ New to code and none of this is making sense? Watch my '12hr+ CZcams Coding Bootcamp' in which you will learn HTML, CSS and JavaScript Fundamentals completely from scratch. It's on my channel and its 100% free.
    ⭐ In most videos I use Tabnine as my A.I autocompletion tool. You can download it for free here (I get no commission from this link, but am in a partnership): bit.ly/tabnine-top-tool
    ⭐ You can get a blockchain domain with my affiliate link here: bit.ly/get-a-crypto-domain
    ⭐ If you would like to buy me a coffee, well thank you very much that is mega kind! : www.buymeacoffee.com/aniakubow
    ⭐ Sign up for weekly coding tips from my newsletter partnership: bit.ly/JS-tips
    You can also find me on:
    Twitter: / ania_kubow
    Instagram: / aniakubow
    #codingbootcamp​ #coding

Komentáře • 1,4K

  • @falconag8684
    @falconag8684 Před 2 lety +1736

    Thanks to you Mother of the Dragons for this helpful tutorial

  • @salal_guitar5583
    @salal_guitar5583 Před 2 lety +15

    You make some of the best tutorials I have ever seen on YT. You have a great teaching style of anticipating what the student will have questions about and making sure not to skip over details that would be confusing. Thanks so much!

    • @healthyyoutube8258
      @healthyyoutube8258 Před rokem

      True and I especially like her face which is very fuckable btw.

  • @mrCetus
    @mrCetus Před 2 lety +31

    One thing I really love about your tutorials is how you explain what might go wrong for someone who is watching in the future. No other tutorials I've watched explain in such detail. Thank you and keep up!

  • @marcmoreaux
    @marcmoreaux Před 2 lety +8

    You make it look so easy ! Thank you for having such a detailed video !
    It is a perfect starter / intermediate video. You have a lot (a LOT) of details, but in the end, all I need in this video, and I don't have to open 10 new tabs to understand what is what ! As an extra, I also get to learn a few tricks !
    Thx again ;)

  • @rider_bravo
    @rider_bravo Před rokem +4

    I randomly bumped into this video and so glad I did. Learned heaps and feel less scary about Node and the packages used. Thank you Ania.

  • @vajrasar
    @vajrasar Před 2 lety +4

    Won't speak for others, but this really helped me understand a lot of things even when I'm not looking to sell APIs anywhere. Please continue with your elaborative teaching style as these days it's a rare art. Thanks much.

  • @andyk9522
    @andyk9522 Před 2 lety +5

    Your videos are so well put together - you obviously work so hard on these 👍👍👍

  • @lokeshstufs
    @lokeshstufs Před 2 lety +4

    Straight to the concepts without beating around the bush !! Wonderful 👏

  • @MaxOnMaxxer90
    @MaxOnMaxxer90 Před 2 lety +6

    Hi Ania,
    Thank you for this tutorial.
    I first followed your 2 parts about building a simple web scraper, and then to get it working on mobile (because it didn't work due to using localhost) I followed this tutorial and got my web scraper working!
    A tutorial about what rapid API and Heroku are doing to understand this a bit better would also be really nice.
    Keep up the good work!

  • @Wardret
    @Wardret Před 2 lety +1

    Ania I am amazed on how valuable your channel is. Keep up the good job.

  • @jamesallison9725
    @jamesallison9725 Před rokem +2

    Thanks Ania for this fantastically interesting, valuable and well-crafted tutorial. You are a supernova in the ferment of programming tutorials.

  • @OlegBedriy
    @OlegBedriy Před 2 lety +31

    Damn, the idea is so brilliant. Didn't know about API marketplace, by the way.
    Thanks a lot!

  • @srinivasulurao
    @srinivasulurao Před 2 lety +13

    Simply brilliant, thanks for explaining things crystal clear 👍

    • @Anlonn
      @Anlonn Před 2 lety

      si pentru madalina e cristal. dar ea a baut din el.

  • @JoaoSantos-ke8dq
    @JoaoSantos-ke8dq Před 2 lety +1057

    Am I the only one who feels it's a unique experience being taught by Daenerys Targaryen on how to make money from selling APIs?

    • @aniakubow
      @aniakubow  Před 2 lety +143

      🐉👑

    • @fakeit6339
      @fakeit6339 Před 2 lety +5

      correct

    • @alifrio75
      @alifrio75 Před 2 lety +49

      as indonesian it feels more bizzare actually, cos API in indonesian means fire 😂

    • @bfunkydunk
      @bfunkydunk Před 2 lety +2

      @@aniakubow Could you convert this to a web scraper (specific words, etc. Not a specific site?

    • @joshydenberg1249
      @joshydenberg1249 Před 2 lety

      @@bfunkydunk Off the top of my head i think you would use something like python, ETC for doing that on large datasets as it will be much more optimized and multithreaded to search lots of documents at once..
      That being said it seems like the parser she is using here (cheerios) is just searching the dom, so if it is referenced in the dom (static) or loaded to the page i don't see why you couldn't search for a different/specific word.

  • @hails1244
    @hails1244 Před 8 měsíci

    I literally finished your Async/Sync video series, and this video is the perfect follow-up. Thank you for all your vides! Please keep making them!

  • @rizwanmumtaz4285
    @rizwanmumtaz4285 Před 2 lety +8

    Although i completely disagree with your approach of scraping data at runtime, BUT, i must say i have watched every second of this video for the only reason that you made it so perfectly precise no long no short, I wish every programming youtuber made this kind of video with a precise goal in mind, in fact i have forwarded this video to people who were asking me about a good intro to node js.

  • @chikken007
    @chikken007 Před 2 lety +30

    Easily one of the best tutorials I ever saw.
    An original idea and a great, explanation, step by step, nothing left out. Subbed!

  • @iddrisyakubu7997
    @iddrisyakubu7997 Před 2 lety +3

    Big thank you ! cant imagine how much joy and fun i always have coding along with you. keep it up.

  • @MrThemusicman9
    @MrThemusicman9 Před 2 lety +8

    Something I have been meaning to look into for a long time, the video is great and very clear. Thank you

  • @danthemanic8479
    @danthemanic8479 Před 2 lety +45

    Gratulacje, twój akcent jest doskonały!

  • @CarlvanEijk
    @CarlvanEijk Před 2 lety +49

    Ania, your tutorials are excellent.
    Very well delivered and executed.
    Your elocution is perfect, so I can watch them at 2x speed and still catch every word.
    No waffle, all the details without diverging. Concise.
    You should have WAY more views than you do.
    One of the best.
    thank you - keep them coming.

  • @dfxdfx5368
    @dfxdfx5368 Před 2 lety

    I like the way you insert a pause at the end of the sentence, before the final word. It gives off a vibe of TV news.

  • @CodingEntrepreneurs
    @CodingEntrepreneurs Před 2 lety +343

    What a concept! How did I not think of this??
    Great work. Ania!

    • @deekshantwadhwa
      @deekshantwadhwa Před 2 lety +4

      Yep, please create a Django version of this, I know the deployment to Heroku part but transferring Django API to RapidAPI is where I am struggling.

    • @kelvinxg6754
      @kelvinxg6754 Před 2 lety +2

      yeah dude ,definitely make these django API too!

    • @zahirnaseem7030
      @zahirnaseem7030 Před 2 lety

      Fantastic outline of the concept :)

    • @__--JY-Moe--__
      @__--JY-Moe--__ Před 2 lety

      new tools 4 the future!!

    • @Anlonn
      @Anlonn Před 2 lety +1

      madalina stia. dar nu a vrut sa zica.

  • @slimyelow
    @slimyelow Před 2 lety +6

    This is one of the most interesting topics I have seen all year. I have for so long tried to demystify the true power of marketing APIs.

    • @atahirince
      @atahirince Před 2 lety

      Are you coming from metal forging ages?

  • @MartinJaszczuk
    @MartinJaszczuk Před 2 lety

    What a great video. Thank you for being a pillar of the community.

  • @brandonm4471
    @brandonm4471 Před 2 lety

    You explain things very well! in a way that anyone can understand... you're amazing and never stop!!

  • @robb7148
    @robb7148 Před 2 lety +7

    Great tutorial, Rapid API wasn’t even on my radar. Thanks 👍!

  • @Styrikk
    @Styrikk Před 2 lety +50

    Robisz coś pozytywnego i kreatywnego dla innych :) Nie przestawaj! Tym bardziej, że widać od ludzi pozytywną reakcje

  • @MightyBallsTV
    @MightyBallsTV Před 2 lety

    You are a very good teacher, thank you, I am learning node and especially npm and you are by miles the best tutor I have watched. Also I love your accent!

  • @anaheryana9921
    @anaheryana9921 Před 2 lety

    A great tutorial and the explanation is very clear. I've learn about scraping and developing API using NodeJS. Thank you Ania.

  • @soursuperslick
    @soursuperslick Před 2 lety +24

    You speak very similar to that of Christopher Barnatt from explaining computers. I appreciate your content and love what you do! Your intellect is beautiful.

  • @coderkind
    @coderkind Před 2 lety +5

    Great video. I know it might not be easy to nail down, but it would've been good to see how you can best judge the cost of hosting your API and how much to charge for access (also, I wasn't sure if you covered tokenised API access or whether that's handled elsewhere)?

  • @Alex-vs9zp
    @Alex-vs9zp Před rokem +2

    1 year after video release but never late, you won my subscription, thank you :D

  • @jbarriossandrea
    @jbarriossandrea Před 2 lety +2

    I came to watch something educative while I was eating my breakfast, I did not even realize that I watched the whole tutorial, excelente 🥳

  • @LuizFernandoSoftov
    @LuizFernandoSoftov Před 2 lety +40

    Great tutorial. I'm old with JS, since 2001. I liked what they have done with the language, but those lines without ending ';' freak me out.

    • @helloukw
      @helloukw Před 2 lety +1

      You can add them to feel safe.

    • @LuizFernandoSoftov
      @LuizFernandoSoftov Před 2 lety +3

      @@helloukw I know that. Even in the past you can do with or without those ';'. For me who program in C and a lot of others languages, this just fell wrong, like something is missing. Whatever, today there aren't JavaScript programmers, just developers, most of all just use NPM and don't know what happen when build, even never seen the build package or not be able to read those.

    • @theflashgordon193
      @theflashgordon193 Před 2 lety +2

      @@LuizFernandoSoftov yeah as a c developer too. it's a bad habit

  • @gorandejanovic4796
    @gorandejanovic4796 Před 2 lety +14

    Really interested into this one...

    • @dnfrd2
      @dnfrd2 Před 2 lety

      why? can you not figure it out?

  • @anakod0k
    @anakod0k Před 2 lety

    it's an easy-to-follow tutorial, and such a mind blowing business idea...i never thought of this.....

  • @elendil4543
    @elendil4543 Před 2 lety +1

    I like how you're saying http request :)
    thank you very much Ania for sharing with us your experience and positivity

  • @maplestoryinchinese
    @maplestoryinchinese Před 2 lety +16

    She's done it omg. She's finally delved into the untapped market of selling API's hahahaha. Keep it up!

  • @Cage5
    @Cage5 Před 2 lety +32

    I have become a big fan of you Ania both professionally and clearly you are a wonderful person.

    • @aniakubow
      @aniakubow  Před 2 lety +7

      Thanks so much David! You rock!

  • @divergent_ghost
    @divergent_ghost Před 2 lety

    Very helpful Ania, I know nothing of JS but little bit about HTML and I could understand what you are doing. Thanks

  • @danielwilson4257
    @danielwilson4257 Před 2 lety +1

    This is the best tutorial on making your own API. Ania, you are too AWESOME!!

  • @nick_jacob
    @nick_jacob Před rokem +14

    Been a front end dev for five years and one year of back end on ServiceNow. I had no idea this was how you built an API. I've always used the api data, but never knew how it was built. I am surprised at how easy it is with express. Maybe not easy for beginners. I have some basic tutorials on my channel but this is nice. Just as good, if not better than a Udemy course.

    • @prymestudio
      @prymestudio Před rokem +1

      Bro I feel a beginner would follow without any issues. As long as they know the basics of Js

    • @nick_jacob
      @nick_jacob Před rokem +1

      @@prymestudio I have worked with a lot of entry level devs and they do not understand these things. They might be able to follow the code along, but they are not going to understand every bit of it. Callbacks, promises, GET, POST, these are not beginner level aspects. Express makes this easier obviously.

    • @prymestudio
      @prymestudio Před rokem +1

      @@nick_jacob I see what you mean

    • @daniellarson383
      @daniellarson383 Před rokem

      Realistically this is an extremely simple API with a majority of the heavy lifting API aspects handled by RapidAPI.
      This is more just creating requests that a custom API is using to return data, it's not building an API itself
      And I'm not saying this like it's a problem, but just want you to know that you probably shouldn't get API development confused with endpoint building that an API then uses

  • @ApartmentAngelsFireStarters

    okay i cant lie, I was a bit sceptical about your video quality, but this is just beyond helpful. Its so easy to follow and understand like I hate js but this motivates me to use javascript. Thank you for this tutorial and amazing idea.

  • @TjSpoonManJacques
    @TjSpoonManJacques Před 2 lety

    Ania I stopped this video three times inorder to call family members to check it out! AMAZING! You are a gift to all of the self taught developers like myself - MUCH LOVE FROM NEW ORLEANS!

    • @aniakubow
      @aniakubow  Před 2 lety +1

      Oh wow thank you so much TJ! 😍😍😍😍 this is so great to hear! Big love to you and your family too - honestly this has really made my day 🙌

  • @nicolaspardo1342
    @nicolaspardo1342 Před 2 lety +1

    what an amazing tutorial! liked and subscribed! Greetings from Colombia!

  • @rekinludojadek
    @rekinludojadek Před 2 lety +7

    Aniu, bardzo dobrze tłumaczysz. Daję radę nawet ze swoim poziomem angielskiego ;-) Dziękuję 🙂

  • @ThatTreyGuy
    @ThatTreyGuy Před 2 lety +9

    Great video and definitely learned a lot.
    When doing the :newspaperId section, couldn't we just filter the articles array instead of filter/find on the newspapers array? That way we wouldn't be using time and resources to duplicate the effort if we already have all the articles

    • @shubham3mathur
      @shubham3mathur Před rokem

      .filter() actually returns the object (which matches search criteria), So no need to run the filter again. Just get whichever property you want from that object.

  • @pablocortes682
    @pablocortes682 Před 2 lety

    Great video! You explain everything so well Ania, thank you so much!

  • @shmupful
    @shmupful Před 2 lety

    Very clear and enjoyable tutorial, thank you so much!

  • @elmalloc
    @elmalloc Před 2 lety +5

    Nice! I watched at 1.25x speed and forgot I was at that speed when thinking "Wow, she talks as fast as I do"

  • @OstonCodeCypher
    @OstonCodeCypher Před 2 lety +4

    I wish you know the NUMBER of sites I have scrapped after this tutorials. Thanks and Stay BLESSED Ania 🥰

    • @gdolphy
      @gdolphy Před 2 lety +2

      Scrape responsibly. Alot of sights are putting up pay walls and bot deterrents because the bots are consuming too much bandwidth.

    • @OstonCodeCypher
      @OstonCodeCypher Před 2 lety +2

      @@gdolphy Yes bro, definitely am doing it responsibly.

  • @bellar4484
    @bellar4484 Před 2 lety +1

    You have an amazing presence and such a clear way of explaining

  • @brianlai8561
    @brianlai8561 Před 2 lety

    Great knowledge. Been following along and got my first front end dev job.
    Ps. love the pintail board. skating liberates the mind and helps re-focus, good hobby to have! =)

  • @MygenteTV
    @MygenteTV Před 2 lety +3

    this is fantastic, thank you so much for this. I just started getting my head wrapped around API. Now can you do a video on how to use this API or any API in your app?

  • @leogg2005
    @leogg2005 Před 2 lety +10

    Ania! Thanks for this tutorial. Exactly what I was looking for to do multisite scraping.
    One question for you, how would you save those results in firebase or any other type of db, so they don't get lost?
    And how would you then make an API from that mentioned db so they all there no matter the date?

    • @enricoamniat
      @enricoamniat Před 2 lety

      Such a good Question I am battling with the same dilemma.

    • @inactiveaccount4829
      @inactiveaccount4829 Před 2 lety +2

      Once you have the data that you need, you can create some code to filter out exactly what you want and store it in a hash/object or an array, or an object-array. Then, instead of creating yet another API, you can create some more code that displays the information that you want Rather than having the API’s display the information immediately.

    • @inactiveaccount4829
      @inactiveaccount4829 Před 2 lety +1

      If you want also, you can use an the date() method that gives you the current date, and store all of the information you’ve gathered based on date and other specifications. If you’d like to store all of the data regardless of date, you can simply combine everything that you scraped into an object of objects/arrays, and when you finally decide that you need to pull up any of that data regardless of date, you can always store the date along with that data so that you can search for it when needed.

  • @Issyshaik
    @Issyshaik Před 2 lety

    You’re so cool, well taught and very informative. Thank you

  • @chesterman18g
    @chesterman18g Před 2 lety

    that was awesome tutorial. I am working on iOS, but your tutorial showed me how smooth it is to build own API and publish it.

  • @aashiksadar1386
    @aashiksadar1386 Před 2 lety +11

    Really good simple tutorial on how to use Cheerio to Scrape pages and Setup an API Endpoint, straight to the point. Kudos to that!
    One concern I have is that if Scraping the data from these pages are legal or not?

    • @snipercide5149
      @snipercide5149 Před 2 lety +11

      You have to be careful, it's bit of a grey area. Your scaping tool should respect the Robots nofollow/index meta tags, and your API should only provide a summary and link to the full content. If your API delivers the full content, or you're making money from someone else's content without their permission, there's always some risk of a lawsuit.

  • @TheStjanis
    @TheStjanis Před 2 lety +6

    Thank you for a great tutorial Ania. Really inspires to dig a bit deeper and explore what more can be built based on such app. Though one question regarding the code. Why in "/:newspaperId" route you make a new axios get request instead of filtering matching results from the existing articles array based on provided ID in params?

    • @vladbocharov3246
      @vladbocharov3246 Před 2 lety +3

      other big question is how articles array will be updated? answer: only on server reload. btw good demo anyway

    • @zathkal4004
      @zathkal4004 Před 2 lety +1

      Although is possible but this approach seems more desirable for optimising performance/profiling and negating code complexity issues- as an initial GEt request of all items and then running a higher order function like filter would be bulky if there were around 10000+ items in an array
      End of the day javascript is single threaded (:

    • @zathkal4004
      @zathkal4004 Před 2 lety

      @@vladbocharov3246 with every HTTP request to the server.... a frontend setInterval would do the automation

    • @TheStjanis
      @TheStjanis Před 2 lety

      @@vladbocharov3246 great point! what about using node-cron? seems that could get a job done, e.g. by setting daily or weekly schedule

    • @StarryNightSky587
      @StarryNightSky587 Před 2 lety +1

      Because it is expected normally for a RESTful api to serve /foo for "get all" and /foo/:id for "get one"
      Also keep in mind that you normally send articles "in packages" e.g. in sets of 50 (bc you might have 3 billion stored). so if you want some very old id you might need to reload 50 articles in a for loop on the backend over and over again until you find the correct one in the filter function

  • @fukthejab201
    @fukthejab201 Před 2 lety

    I love your videos Ania! Keep it up!

  • @luishiguera4745
    @luishiguera4745 Před 2 lety

    Thank you very much for sharing it !! it was great and just to the point , very well explained !! Great Job :)

  • @kiely95ify
    @kiely95ify Před 2 lety +16

    Really great video, never thought of this. Only issue I can see would be the policies of these newspaper sites being scraped. Many already have their own form of API already or probably forbid others from storing their data like this.

    • @dokgu
      @dokgu Před 2 lety +7

      This was intended to be an educational video and web scraping is a quick way to achieve that. When you create your own API, you are responsible for making sure that you are legally able to do what you intend your API to do which is beyond the scope of this tutorial.

    • @zualapips1638
      @zualapips1638 Před 2 lety

      @@dokgu I didn't think of that 😮

  • @miketurner3461
    @miketurner3461 Před 2 lety +6

    In addition, don't forget you can take advantage of communicating with subprocesses in the OS (for things that run at that level), take deeper advantage of collaborative multitasking, and use queueing data structures to stash highly blocking requests that you might not want to store as pure javascript objects in case your application crashes/has bugs.

  • @CHRISCANHAMC4NH4M
    @CHRISCANHAMC4NH4M Před 2 lety

    This was a very enjoyable teaching video. I had a couple of extra steps to take but very enjoyable :)

  • @yo1414
    @yo1414 Před 2 lety +1

    Another awesome video !! Thank you!

  • @AvanaVana
    @AvanaVana Před 2 lety +3

    Long time node dev here…and this video showed me that I’m 3 years behind in not needing the “-save” option for npm install 😂.
    Also, have seen and even used a couple RapidAPIs before, but never tried it as a creator. I was glad to get a quick look inside and have a few projects that I might be able to use with it. This is the first video of yours that has come up for me on YT-I think I would like to see more!

  • @togelian
    @togelian Před 2 lety +17

    Very informative, there was a few packages I didn't know :) Don't you have a problem with the articles getting out of date? Or does Heroku restart your app at certain intervals? Otherwise you have an array that is populated only when the server starts. The other endpoints are alright, but you might run into IP blocking if your API become too popular. The best would be to load the articles at regular intervals and only filter them for each endpoint.

    • @Meritumas
      @Meritumas Před 2 lety

      that would be a second iteration... make it more "prod ready"

    • @__--JY-Moe--__
      @__--JY-Moe--__ Před 2 lety

      **might run into IP blocking if your API become too popular.** I don't understand?? who/what, do U think would be blocking what IP??

    • @SmadaSmadas
      @SmadaSmadas Před 2 lety

      @@__--JY-Moe--__ The server that stores the actual conntent the API is forwarding. It may consider your API calls as DDOS or other malicious behaviour.

  • @abdulazeezsule4107
    @abdulazeezsule4107 Před 2 lety

    Great video thanks for this. I have now added api building to my portfolio.

  • @phillvaloyi3803
    @phillvaloyi3803 Před rokem

    Simple, helpful, insightful and fantastic. Thank you so much for this course, learnt a lot

  • @guillaume6459
    @guillaume6459 Před 2 lety +9

    The thing is, wich API would we make? My hot take would be doing stuff and finding something you find usefull and not or badly done. Any better ideas?

    • @thiccboi6211
      @thiccboi6211 Před 2 lety

      start doing one. You'll quickly discover more as you go.

    • @Alex-nm1xe
      @Alex-nm1xe Před 2 lety +1

      EAN codes. Each item in the world has a UUID code. Scrap Amazon, Ebay, Wallmart, etc. searching for that item. Build an API around delivery times and prices comparison between them. What do you think?

  • @larry6h23
    @larry6h23 Před 2 lety +15

    I wonder if there's any legal concern when we create scrapping tool API?

    • @calccalccalc
      @calccalccalc Před 2 lety +1

      Less legal and more policy.

    • @samandar4940
      @samandar4940 Před 2 lety +6

      You can bribe the law with the money you made from APIs

  • @jlpatriot91
    @jlpatriot91 Před 2 lety

    Thank you for imparting your coding knowledge. This has been a wonderful tutorial :)

  • @donlogan4031
    @donlogan4031 Před 2 lety

    amazing presentation! Thanks for the valuable lessons.

  • @puffdaddyfpv7046
    @puffdaddyfpv7046 Před 2 lety +4

    This is the first video I from Ania I watch. Currently I am learning php/css/html and will start JS soon. I just wanted to say: ‘Ku bo’ means ‘for/with you’ in my language (Papiamentu) so basically this comment is gonna lead into a proposal: Ania tell me, can I be your main simp? 🤣

  • @SovatthaSok
    @SovatthaSok Před 2 lety +3

    Thank you Ania, I discover your videos and I am amazed by the quality of the content!
    Regarding selling your APIs from webscrapped data, shouldn't we first contact those websites before to sell their data, or a link to them is enough?

    • @franciscopandol6005
      @franciscopandol6005 Před 2 lety +3

      You should read the terms and conditions of the website you are scrapping, many websites have terms against this practice.

  • @ecetabur3707
    @ecetabur3707 Před 2 lety

    she is awesome and her videos help me a lot! she definitely deserves more subscribers! thank you ania

  • @darkbanditEX
    @darkbanditEX Před rokem

    Excellent tutorial and practical overview on how to get an api up and running. Thank you.

  • @orange-vlcybpd2
    @orange-vlcybpd2 Před 2 lety +7

    Nice idea, however, you should consider test automation for the data source scheme changes, and the second point is the site will register frequent access they may start blocking (which may even happen automatically by AWS routing services), which will have impact on "your API"s availabiliy, resulting in bad reviews.

    • @jensvdh4217
      @jensvdh4217 Před 2 lety

      You're right but I guess she aimed for an easy to understand example since there are many different topics she covered in this tutorial. Besides: I know it's an example but she should have pointed out that this api is in now way legal to run and even provide via public api considering all the newspaper outlets own copyright to these articles.

  • @jonathanalvian9550
    @jonathanalvian9550 Před 2 lety +3

    the most beautiful programmer I've ever seen, I'm still a beginner, Java script and HTML5 I'm not an expert, but seeing your explanation I became very enthusiastic LOL

  • @jimmybellmon1268
    @jimmybellmon1268 Před 2 lety

    very well done, thank you, gave me some idea for a directory and portal system I putting together

  • @marizoo8487
    @marizoo8487 Před 2 lety

    Thanks so much Ania! You are great! love love love this tutorial!

  • @alibeyit3860
    @alibeyit3860 Před 2 lety +7

    Great video, just one question though, since you are doing the data fetching outside of endpoints, wouldn't it go ahead and fetch the data from sources once the server is up and running and from that point it will just give outdated data if you never restart your backend? More logical thing would be putting the fetch logic in a setInterval() which would be called lets say every hour so you would return more up to date data once your endpoints get hit.

    • @CrAzZyTheCodingBoss
      @CrAzZyTheCodingBoss Před 2 lety

      nope

    • @njc2kewl
      @njc2kewl Před 2 lety +2

      It fetches data on the "/news" route, so each time that API is hit at that endpoint, it will fetch from the news sources. If anything, you could add a shared cache layer to serve new requests, invalidating/refreshing on some interval.

    • @arjundureja
      @arjundureja Před 2 lety +1

      @@njc2kewl At 39:02 though, it looks like she's only sending the articles in the news route, so how does it know to re-fetch?

    • @narkocat
      @narkocat Před 2 lety

      @@arjundureja it does not, same as she there are no api key validations, you can just use the api for free nothing is stopping you.

  • @TheNamesJT
    @TheNamesJT Před 2 lety +6

    28:38 When you keep refresh the page making more then 1 get request to that endpoint the data copies itself to the object again? instead of overwriting the current data like you think it should do. Hoping she teaches how to get around this. 34:40 this assumes all html data is the same across all webpages.

    • @jacksoncutler8340
      @jacksoncutler8340 Před 2 lety

      The declaration of the articles array should be within the scope of the request handler, not global. I would put that line of code right before the cheerio .each loop

  • @Orell1986
    @Orell1986 Před 2 lety

    Clear and well presented. Nicely done!

  • @diegoc8640
    @diegoc8640 Před 2 lety

    Awsomee!!! so easy to understand and so important and productive for the work!!! thanks Ania for share your knowllege. Im becoming a fan of all your videos. I just seen this blog a few days ago and watched lot of your codes!!!!

  • @moncefkho
    @moncefkho Před 2 lety +7

    it's okay to do the same for a school projet, but not for real projects

  • @margarit366
    @margarit366 Před 2 lety +5

    Great tutorial Ania, thanks :) My only question is whether it is 100% legal to make an API that scraps data from webpages like The Guardian(the one you show in the tutorial) and then post the API publicly?

    • @KCM25NJL
      @KCM25NJL Před 2 lety +2

      There are no specific laws that do not permit web scraping/crawling...... and as long as you are not simply copying the "presentation" of publicly available data, e.g. cloning a web site and reusing it for commercial purposes, then you are not in breach of copyright laws either. One might also add that the scraped data links back to the source, so all credit is given. If anything, such an API will drive traffic TO the scraped sites, honestly can't see who'd complain about that :)

    • @juiceboxh3ro
      @juiceboxh3ro Před 2 lety +1

      always check the ToS of the website you're scraping from and consider if you want to be moral or morally flexible 😄

  • @himanshupareek8389
    @himanshupareek8389 Před 2 lety

    Thank you so much for this❤️ much needed

  • @VanadiuM140291
    @VanadiuM140291 Před 2 lety

    Thank you very much for your content, I wish you to have millions of views!!!

  • @thedevdavid
    @thedevdavid Před 2 lety +11

    Absolutely cool tutorial! Question: Is it legal to ask for money for API usage if you get the data from these sources (Guardian, etc.)?

    • @thedevdavid
      @thedevdavid Před 2 lety +1

      @James Pickering Yes, that's true. My question is about the financial aspect. Can I ask money in exchange of some else's publicly available stuff? I mean, can I ask money for providing an API which ex. scrapes your FB account?

    • @AJax2012
      @AJax2012 Před 2 lety +3

      @@thedevdavid Just because something is "publicly available" doesn't mean it's not copyrighted. In fact, this has been a massive debate in the US over the past 3-5 years... But here's a rundown on your social media content: if you own the photo (if you're the one who took it or you're the one who paid for someone to take it and have purchased the rights to that content), it is absolutely illegal for you to scrape that data and sell it. However, I will say good luck fighting large companies on that kind of stuff... They'll typically just run you through courts until you don't have any money left to fight it, unfortunately. I hope this helps :)

    • @AJax2012
      @AJax2012 Před 2 lety +3

      @@thedevdavid Haha, I didn't mean to imply that you were going to ;) I was mostly pointing out how ridiculous it is that large companies can get away with that kind of stuff with sleazy tactics, lol.

    • @samandar4940
      @samandar4940 Před 2 lety +1

      You can bribe the law with the money you made from APIs 😂

  • @thatoneguy9364
    @thatoneguy9364 Před 2 lety +7

    This was a great tutorial, just not sure what to do about any legal issues surrounding the data sources.

  • @mandarmanvi
    @mandarmanvi Před 2 lety

    Thank you so much Ania for this tutorial 🙌

  • @_andi_.
    @_andi_. Před rokem

    I really enjoy this, not only she looks great, but i can tell for sure, if someone can explain something, and has a good way to do so, not too much blabla... Straight to the point.
    Its hard in a way, to get things explained well, cause there is just so much to talk about...
    Awesome work Ania :) will follow from now on

  • @hardikmirg6279
    @hardikmirg6279 Před 2 lety +6

    Can't wait for 26 hours 😭😭... Btw great content Ma'am

    • @dnfrd2
      @dnfrd2 Před 2 lety +1

      how come?

    • @hardikmirg6279
      @hardikmirg6279 Před 2 lety +1

      @@dnfrd2 I mean, I posted this comment a day ago... At that point it was showing "premiering in 26 hours"

  • @donniedamato
    @donniedamato Před 2 lety +10

    Instead of concatenating the urls as regular strings, you should consider constructing via the new URL() constructor which handles the base for you.

    • @AndresZzGtr
      @AndresZzGtr Před 2 lety

      this comment is gold, thank you buddy

    • @aniakubow
      @aniakubow  Před 2 lety

      Thanks for the tip Donnie!

  • @yogibangalore6206
    @yogibangalore6206 Před 2 lety

    Cool appreciate the details of the presentation.. keep going ania..

  • @stanleyejechi1417
    @stanleyejechi1417 Před 2 lety

    Awesome Tutorial, Ania. Thank you.

  • @isabellagrayson8583
    @isabellagrayson8583 Před 2 lety +35

    I think the 2020 pandemic has taught a lot of people the importance of multiple streams of income,unfortunately having a job doesn't mean security...no rich man or woman made it through salary,investing now will be wise

    • @evelynhannah3147
      @evelynhannah3147 Před 2 lety

      I'm new to forex trade and I have been making huge losses but recently see a lot of people earning from it.can someone please tell me what I'm doing wrong

    • @georgewilson1104
      @georgewilson1104 Před 2 lety

      How does this whole bitcoin thing work, I'm interested in it and I'm willing and ready to invest heavily in it but I'm gonna need an assistant from any trusted and productive professional

    • @lunamichael3139
      @lunamichael3139 Před 2 lety +1

      @@evelynhannah3147 All you need now is a professional broker else you gonna continue blowing of your account

    • @ameriajane9069
      @ameriajane9069 Před 2 lety

      Bitcoin trading is much different from just saving your coins in your wallet. It involves trading bitcoin under forex

    • @arialucas880
      @arialucas880 Před 2 lety

      Learn how this trades works and break them down to science, then construct them you will be surprise with what you come up with...

  • @naveengali
    @naveengali Před 2 lety +3

    Please make a video on how to setup webstorm more professionally so that we can code any language in it seam lessly 🙏🙏