課程設計:python_網路爬蟲專案

籍籍無名之輩發表於2021-03-09

課程設計:python_網路爬蟲專案

專案詳情:
課程設計:貓圖爬取 2019.6-2019.7

1.選題目的及意義
為了方便在網上進行圖片的下載爬取,通過新穎的,有趣的方式來下載所需要的圖片,充分利用python語言簡潔性和高效性,通過這種方法的熟悉,可以來進行更深層次的學習。
2. 功能設計
本軟體相對比較簡單,主要功能就是通過視覺化介面獲取指定規格的圖片。
3. 涉及知識點
簡單的python相關知識以及介面化設計:

  • 利用python內建的HTTP請求庫Urllib的函式以及萬用字元對目標網址資料進行獲取處理;
  • ·使用tkinter庫編寫視覺化介面。

4. 系統執行結果
在這裡插入圖片描述
在這裡插入圖片描述
5. 源程式清單

import tkinter
from tkinter import messagebox
import urllib.request

class APP:
    #定義爬蟲程式碼,並爬取圖片
    def grap(self):
        img_width = self.input_width.get()
        img_height = self.input_height.get()
        response = urllib.request.urlopen('http://placekitten.com/g/'+ img_width +'/'+ img_height)
        cat_img = response.read()

        name = 'cat_'+str(img_width)+'_'+str(img_height)+'.jpg'

        with open(name,'wb') as f:
            f.write(cat_img)

    def __init__(self):
        #建立主視窗,設定視窗大小,標題
        self.tk=tkinter.Tk()
        self.tk.title("小貓咪圖片獲取器")
        self.tk.geometry("500x300")
        #建立畫布
        self.canvas = tkinter.Canvas(self.tk,height=300,width=300)
        self.canvas.pack()
        #建立標籤
        self.label_width = tkinter.Label(self.tk,text='寬度:')
        self.label_height = tkinter.Label(self.tk,text='高度:')
        #建立輸入框
        self.input_width = tkinter.Entry(self.tk,width=30)
        self.input_height = tkinter.Entry(self.tk,width=30)
        #建立按鈕
        self.get_button = tkinter.Button(self.tk,command=self.grap,text="獲取",width=10)
        #設定佈局
    def gui_arrang(self):
        self.label_width.place(x=60,y=170)
        self.label_height.place(x=60,y=195)
        self.input_width.place(x=135,y=170)
        self.input_height.place(x=135,y=195)
        self.get_button.place(x=180,y=235)

def main():
    app = APP()
    app.gui_arrang()
    tkinter.mainloop()
if __name__ == '__main__':
    main()

  

相關文章