Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Tạo kết nối đến dữ liêụ của một website nào đó

00:41 06-10-2023 348 lượt xem 2 bình luận 00:46 06-10-2023

Hi mọi người

Em muốn tìm hiểu về cách tạo một cái kết nối tới dữ liệu của 1 website cụ thể nào đó. Ví dụ như là: https://github.com/Blackcat76iT/OsuNet/tree/29571b5270b52c628a809225ce32c20573b65a3b ( em muốn tạo kiểu giống mấy cái folder để request và nhận về dữ liệu mà mình muốn như thư mục ~/scr/OsuNet ở github trên ấy ạ )

Thì em nên tìm hiểu từ đâu ạ? Em thật sự không biết keyword nên tìm ra sao :(

Em có tra google kể cả chatGPT thì đều nói là nên học RestAPI nhưng em tìm thì thấy họ chỉ cách tạo hẵn luôn 1 web API nhưng em không biết nó có phải mà chính xác những gì em muốn làm hay không.

Cảm ơn mọi người đã đọc, mong mọi người giúp đỡ em ạ~

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Rot4tion đã bình luận 14:40 06-10-2023

Còn nếu bạn muốn lấy dữ liệu của các trang web khác thì còn phải phụ thuộc vào web đó có cung cấp API hay lấy dữ liệu bằng API để hiển thị không, nếu có thì bạn nên học RestAPI.

Một số trang web khác sẽ render dữ liệu bằng phương pháp SSR (Server Side Rendering) thì bạn chỉ có thể lấy data bằng cách cào nguyên trang web về sau đó lọc ra các dữ liệu bạn mong muốn, bạn có thể tham khảo stream sau của HowKteam: https://www.youtube.com/watch?v=Fc1HfV2gpB0

Rot4tion đã bình luận 13:58 06-10-2023

Dúng như kết quả từ những gì bạn tìm kiếm trên GG hoặc ChatGPT để lấy dữ liệu từ 1 web thì thường sẽ thông qua API được cung cấp từ web, link github bạn gửi đó là một thư viện giúp hỗ trợ gọi API lấy dữ liệu mà không cần setup request rườm rà.

Đối với API của Osu thì có yêu cầu bạn phải có token để giám sát số lượng request,... Nên nếu bạn muốn sử dụng thự viện trên thì phải tạo Token(API key) thì mới sử dụng được, sau đây là link để tạo token: https://osu.ppy.sh/home/account/edit#legacy-api

Và thực hiện các bước sau đây để sử dụng:
- Cài thư viện, bạn có thể cài bằng nuget giao diện trong visual studio hoặc cài bằng lệnh sau 

PM> Install-Package OsuNet

- Sau khi cài thư viện thành công thì code hàm main của bạn như sau để thử:
 

using System;
using OsuNet;
using OsuNet.Models;
using OsuNet.Models.Options;

public class Program {
    private static readonly OsuApi api = new OsuApi("Điền token mà bạn đã tạo ở đây");

    static async void Main(string[] args) {
        Beatmap beatmap = await GetBeatmapAsync(3713514);

        Console.WriteLine(beatmap.Title);
        Console.WriteLine(beatmap.GetThumbnail()); // Returns a reference to the thumbnail beatmap.
    }

    public static async Task<Beatmap> GetBeatmapAsync(ulong id) {
        Beatmap beatmap = (await api.GetBeatmapAsync(new GetBeatmapOptions() {
            BeatmapId = id
        })).FirstOrDefault();

        return beatmap;
    }
}

 

Câu hỏi mới nhất