Request cơ bản trong python

Request cơ bản trong python

Thư viện requests là một thư viện HTTP đơn giản dành cho python. Về cơ bản nó sử dụng để gửi yêu cầu HTTP qua các dịch vụ web API. Thư viện requests không đi kèm với thư viện tiêu chuẩn của python, để cài đặt nó bằng lệnh pip.

Trong bài viết này, bạn sẽ tìm hiểu những kiến thức cơ bản về thư viện requests bằng cách áp dụng nó để lấy số liệu thời gian thực tình hình virus corona. Bắt đầu nào.

Cài đặt

Trong Windows, gõ lệnh pip sau ở Command Promt

pip install requests

Căn bản về thư viện request

Thực hiện một yêu cầu trong requests rất đơn giản, thực hiện như sau

Trước tiên, hãy chỉ định loại yêu cầu bạn đang thực hiện (POST, GET, PUT, DELETE) và URL mà bạn đang gửi yêu cầu kèm với các thông số bổ sung tùy thuộc vào loại yêu cầu.

Bây giờ chúng ta hãy đưa ra yêu cầu đầu tiên bằng cách lấy các sự kiện trên github. Ta sẽ đưa ra yêu cầu GET (Yêu cầu GET hoạt động giống như cách trình duyệt của yêu cầu một trang). URL của sự kiện github là https://api.github.com/events Code ví dụ như sau

>> import requests
>> link = 'https://api.github.com/events'
>> response = requests.get(link)
>> response.status_code
200
>> response.json()[0]['actor']
{'avatar_url': 'https://avatars.githubusercontent.com/u/45685134?',
 'display_login': 'trinhdinhnam',
 'gravatar_id': '',
 'id': 45685134,
 'login': 'trinhdinhnam',
 'url': 'https://api.github.com/users/trinhdinhnam'}

Xây dựng một project minh họa

Ví dụ mẫu này chúng ta sẽ xây dựng một project thực hiện GET từ URL cụ thể để có thể lấy được thông tin về virus corora trong thời gian thực.

Ta sử dụng đường link dưới đây để lấy thông tin về virus corona ở Việt Nam

scraping_url = "https://covidapi.info/api/v1/country/VNM"

Nếu bạn muốn lấy cho quốc gia khác, hãy thay mã isocode của Việt Nam “VNM” thành mã khác tương ứng.

Ta thử thực hiện gửi yêu cầu GET đến URL này.

>> scraping_url = "https://covidapi.info/api/v1/country/VNM"
>> response = requests.get(scraping_url)
>> print(response.json())
{'count': 323, 'result': {'2020-01-22': {'confirmed': 0, 'deaths': 0, 'recovered': 0}, '2020-01-23': {'confirmed': 2, 'deaths': 0, 'recovered': 0}, …

API trả về json phản hồi của số liệu thống kê virus corona của Việt Nam mỗi ngày kể từ trường hợp corona đầu tiên đến ngày thông tin cập nhật mới nhất.

Thông thường khi chúng ta lấy thong tin, ta muốn lấy số liệu thống kê mới nhất. Để làm điều này, ta phải sắp xếp json phản hồi và chọn thống kê ngày mới nhất, điều này có thể được thực hiện bằng cách sử dụng OrderedDict và Sorted.

Xây dựng một hàm để tự động thống kê các trường hợp

Ta thực hiện điều này như sau

def scrap_number():
  scraping_url = "https://covidapi.info/api/v1/country/VNM"
  payload = {};headers= {}
  response = requests.request("GET", scraping_url, headers=headers, data = payload)
  info = response.json()['result']
  date  = list(OrderedDict(sorted(info.items())))[-1]
  data = info[date]
  message = "Theo John Hopkins {} thông số ngày {} \n Các trường hợp như sau: \nNhiễm {}\nTử vong {} \nHồi phục {}".format("https://coronavirus.jhu.edu/", date, data['confirmed'], data['deaths'], data['recovered'])
  return message

Gọi hàm và thu được kết quả

>> print(scrap_number())
Theo John Hopkins https://coronavirus.jhu.edu/ thông số ngày 2020-12-09 
 Các trường hợp như sau: 
Nhiễm 1381
Tử vong 35 
Hồi phục 1225

Nếu có bất kỳ câu hỏi nào, hãy comment bên dưới. Tôi sẽ trả lời bạn nhanh nhất có thể.

This Post Has 7 Comments

  1. casino

    great website dude!

  2. MichaelCet

    thanks, interesting read

  3. Alinanunda

    xin chào các bạn!
    Bạn có thường xuyên mơ ước không? Sau đó bạn làm gì? Bạn chỉ cần quên hoặc cố gắng hiểu ý nghĩa và ảnh hưởng của chúng đối với cuộc sống của bạn!
    Giấc ngủ là một khía cạnh quan trọng của bán cầu não phải của con người, truyền thông tin từ tiềm thức, đưa ra các tín hiệu quan trọng và đôi khi thậm chí dự đoán các sự kiện trong tương lai!
    Đối với nhiều người, có vẻ như việc giải thích những giấc mơ là rất khó khăn, nhưng không phải vậy nếu bạn tiếp cận nó một cách chính xác và nghiên cứu mọi thứ theo những cuốn sách về giấc mơ.

    một cuốn sách mơ ước cho bất kỳ dịp nào, không có gì thừa, chỉ cần giải mã những giấc mơ, tìm kiếm linh hoạt và lợi ích tối đa cho cuộc sống và nỗ lực của bạn!
    Chúng tôi chúc bạn may mắn và xin lỗi nếu tin nhắn đến với bạn một cách tình cờ!

  4. Iratet

    Xin chào mọi người!

    Tên tôi Là Irina, tôi không còn là con gái, tôi 33 tuổi, có một cuộc sống thú vị và đôi khi tan biến và rơi vào trầm cảm nặng.
    Tôi đã đến nhiều bác sĩ và nhà tâm lý học khác nhau, và sau khi tiêu tốn rất nhiều tiền bạc và thời gian, tôi đã tìm ra giải pháp của mình, bạn hỏi điều gì?
    Tôi mới bắt đầu đọc những câu chuyện cười, hàng ngày trong 10 phút và thường xuyên tham dự các sự kiện liên quan đến hài hước, và điều này bắt đầu có một động lực tích cực và thay đổi cuộc sống của tôi.

    Tôi thường đọc nó, từ nhiều người khác, và tôi khuyên bạn)
    Tại sao tải bản thân với các vấn đề và lo lắng.

    Cười, và sống lâu!

  5. Chunghar

    Artificial intelligence, Cloud computing

  6. JeffreyGow

    Thanks, +

  7. Geraldencog

    thanks, interesting read

Leave a Reply