Created
November 2, 2022 17:16
-
-
Save cisc0disco/10c145be72ce90e72fe282342aeca1e6 to your computer and use it in GitHub Desktop.
2.B Cvičení z 2.11.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "cells": [ | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "<h2 style=\"text-align: center;\">Práce s API</h2>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 31, | |
| "metadata": { | |
| "dotnet_interactive": { | |
| "language": "csharp" | |
| }, | |
| "vscode": { | |
| "languageId": "dotnet-interactive.csharp" | |
| } | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/html": [ | |
| "<div><div></div><div></div><div><strong>Installed Packages</strong><ul><li><span>Newtonsoft.Json, 13.0.1</span></li><li><span>RestSharp, 108.0.2</span></li></ul></div></div>" | |
| ] | |
| }, | |
| "metadata": {}, | |
| "output_type": "display_data" | |
| }, | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "Luke Skywalker má 77 KG\n", | |
| "C-3PO má 75 KG\n", | |
| "R2-D2 má 32 KG\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "#r \"nuget:RestSharp\"\n", | |
| "#r \"nuget:Newtonsoft.Json\"\n", | |
| "\n", | |
| "using RestSharp;\n", | |
| "using Newtonsoft.Json;\n", | |
| "using Newtonsoft.Json.Linq;\n", | |
| "\n", | |
| "RestClient client = new RestClient();\n", | |
| "\n", | |
| "for (int i = 1; i < 4; i++)\n", | |
| "{\n", | |
| " RestRequest request = new RestRequest($\"https://swapi.dev/api/people/{i}\");\n", | |
| "\n", | |
| " RestResponse response = await client.GetAsync(request);\n", | |
| "\n", | |
| " //Console.WriteLine(response.ContentType);\n", | |
| "\n", | |
| " JObject json = JObject.Parse(response.Content);\n", | |
| "\n", | |
| " Console.WriteLine($\"{json[\"name\"]} má {json[\"mass\"]} KG\");\n", | |
| "}\n", | |
| "\n", | |
| "\n", | |
| "\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 30, | |
| "metadata": { | |
| "dotnet_interactive": { | |
| "language": "csharp" | |
| }, | |
| "vscode": { | |
| "languageId": "dotnet-interactive.csharp" | |
| } | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/html": [ | |
| "<div><div></div><div></div><div><strong>Installed Packages</strong><ul><li><span>Newtonsoft.Json, 13.0.1</span></li><li><span>RestSharp, 108.0.2</span></li></ul></div></div>" | |
| ] | |
| }, | |
| "metadata": {}, | |
| "output_type": "display_data" | |
| }, | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "Luke Skywalker se narodil/a na planetě Tatooine\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "#r \"nuget:RestSharp\"\n", | |
| "#r \"nuget:Newtonsoft.Json\"\n", | |
| "\n", | |
| "using RestSharp;\n", | |
| "using Newtonsoft.Json;\n", | |
| "using Newtonsoft.Json.Linq;\n", | |
| "\n", | |
| "RestClient client = new RestClient();\n", | |
| "\n", | |
| "RestRequest request = new RestRequest(\"https://swapi.dev/api/people/1\");\n", | |
| "\n", | |
| "RestResponse response = await client.GetAsync(request);\n", | |
| "\n", | |
| "JObject json = JObject.Parse(response.Content);\n", | |
| "\n", | |
| "RestRequest requestPlanet = new RestRequest(json[\"homeworld\"].ToString());\n", | |
| "\n", | |
| "var planet = await client.GetAsync(requestPlanet);\n", | |
| "\n", | |
| "string nazevPlanety = JObject.Parse(planet.Content)[\"name\"].ToString();\n", | |
| "\n", | |
| "Console.WriteLine($\"{json[\"name\"]} se narodil/a na planetě {nazevPlanety}\")" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 29, | |
| "metadata": { | |
| "dotnet_interactive": { | |
| "language": "csharp" | |
| }, | |
| "vscode": { | |
| "languageId": "dotnet-interactive.csharp" | |
| } | |
| }, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/html": [ | |
| "<div><div></div><div></div><div><strong>Installed Packages</strong><ul><li><span>Newtonsoft.Json, 13.0.1</span></li><li><span>RestSharp, 108.0.2</span></li></ul></div></div>" | |
| ] | |
| }, | |
| "metadata": {}, | |
| "output_type": "display_data" | |
| }, | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "{\n", | |
| " \"geometry\": {\n", | |
| " \"coordinates\": [\n", | |
| " 14.26183,\n", | |
| " 49.86653\n", | |
| " ],\n", | |
| " \"type\": \"Point\"\n", | |
| " },\n", | |
| " \"properties\": {\n", | |
| " \"last_position\": {\n", | |
| " \"bearing\": 283,\n", | |
| " \"delay\": {\n", | |
| " \"actual\": 672,\n", | |
| " \"last_stop_arrival\": null,\n", | |
| " \"last_stop_departure\": 672\n", | |
| " },\n", | |
| " \"is_canceled\": false,\n", | |
| " \"last_stop\": {\n", | |
| " \"arrival_time\": \"2022-11-02T16:35:00+01:00\",\n", | |
| " \"departure_time\": \"2022-11-02T16:35:00+01:00\",\n", | |
| " \"id\": \"U1709Z1\",\n", | |
| " \"sequence\": 12\n", | |
| " },\n", | |
| " \"next_stop\": {\n", | |
| " \"arrival_time\": \"2022-11-02T16:38:00+01:00\",\n", | |
| " \"departure_time\": \"2022-11-02T16:38:00+01:00\",\n", | |
| " \"id\": \"U1710Z1\",\n", | |
| " \"sequence\": 13\n", | |
| " },\n", | |
| " \"origin_timestamp\": \"2022-11-02T16:46:12+01:00\",\n", | |
| " \"shape_dist_traveled\": \"27.142\",\n", | |
| " \"speed\": 6,\n", | |
| " \"state_position\": \"at_stop\",\n", | |
| " \"tracking\": true\n", | |
| " },\n", | |
| " \"trip\": {\n", | |
| " \"agency_name\": {\n", | |
| " \"real\": \"MARTIN UHER\",\n", | |
| " \"scheduled\": \"MARTIN UHER\"\n", | |
| " },\n", | |
| " \"cis\": {\n", | |
| " \"line_id\": \"100317\",\n", | |
| " \"trip_number\": 1041\n", | |
| " },\n", | |
| " \"gtfs\": {\n", | |
| " \"route_id\": \"L317\",\n", | |
| " \"route_short_name\": \"317\",\n", | |
| " \"route_type\": 3,\n", | |
| " \"trip_headsign\": \"Dobříš,nám.\",\n", | |
| " \"trip_id\": \"317_359_221003\",\n", | |
| " \"trip_short_name\": null\n", | |
| " },\n", | |
| " \"origin_route_name\": \"317\",\n", | |
| " \"sequence_id\": 1,\n", | |
| " \"start_timestamp\": \"2022-11-02T16:00:00+01:00\",\n", | |
| " \"vehicle_registration_number\": 1168,\n", | |
| " \"vehicle_type\": {\n", | |
| " \"description_cs\": \"regionální autobus\",\n", | |
| " \"description_en\": \"regional bus\",\n", | |
| " \"id\": 4\n", | |
| " },\n", | |
| " \"wheelchair_accessible\": true,\n", | |
| " \"air_conditioned\": null\n", | |
| " }\n", | |
| " },\n", | |
| " \"type\": \"Feature\"\n", | |
| "}\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "#r \"nuget:RestSharp\"\n", | |
| "#r \"nuget:Newtonsoft.Json\"\n", | |
| "\n", | |
| "using RestSharp;\n", | |
| "using Newtonsoft.Json;\n", | |
| "using Newtonsoft.Json.Linq;\n", | |
| "\n", | |
| "RestClient client = new RestClient();\n", | |
| "\n", | |
| "RestRequest request = new RestRequest(\"https://api.golemio.cz/v2/vehiclepositions?routeId=L317\");\n", | |
| "\n", | |
| "request.AddHeader(\"x-access-token\", \"sem dej svůj golemio token\");\n", | |
| "\n", | |
| "RestResponse response = await client.GetAsync(request);\n", | |
| "\n", | |
| "JObject json = JObject.Parse(response.Content);\n", | |
| "\n", | |
| "//JArray jsonArray = (JArray) json[0];\n", | |
| "\n", | |
| "Console.WriteLine(json[\"features\"][0])\n", | |
| "\n" | |
| ] | |
| } | |
| ], | |
| "metadata": { | |
| "kernelspec": { | |
| "display_name": ".NET (C#)", | |
| "language": "C#", | |
| "name": ".net-csharp" | |
| }, | |
| "language_info": { | |
| "name": "C#" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 2 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment