成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Python 入門(mén)繼續(xù)用tkinter實(shí)現(xiàn)股票查詢

cartoon / 2883人閱讀

摘要:代碼思路通過(guò)獲取輸入內(nèi)容股票代碼,然后通過(guò)按鍵添加,按鍵刪除,添加在列表中的代碼都能通過(guò)查詢按鈕獲取到最新的股票信息。唯一的遺憾是沒(méi)有實(shí)現(xiàn)手動(dòng)選擇更新頻率。當(dāng)然使用也是沒(méi)問(wèn)題噠直接得到的就是格式的則需要轉(zhuǎn)換格式簡(jiǎn)易股票查詢不足之處請(qǐng)見(jiàn)諒

繼續(xù)練習(xí)tkinter,順便學(xué)習(xí)如何抓取網(wǎng)頁(yè)內(nèi)容。

使用urllib和requests都能得到url中的內(nèi)容,有一丁點(diǎn)兒的區(qū)別。
代碼思路:通過(guò)Entry獲取輸入內(nèi)容(股票代碼),然后通過(guò)Add按鍵添加,Del按鍵刪除,添加在列表中的代碼都能通過(guò)查詢按鈕獲取到最新的股票信息。唯一的遺憾是沒(méi)有實(shí)現(xiàn)手動(dòng)選擇更新頻率。
與上一篇內(nèi)容有驚人的相似。

獲取網(wǎng)頁(yè)內(nèi)容之前做的工作:
1.分析需要獲取的網(wǎng)頁(yè)
2.打開(kāi)chrome瀏覽器,點(diǎn)擊右鍵查看,網(wǎng)頁(yè)代碼中找到Network,可以看到出現(xiàn)的鏈接及協(xié)議
3.決定獲取的方式,可以根據(jù)對(duì)網(wǎng)頁(yè)的分析結(jié)果,采用匹配策略

import urllib.request
#import requests
import tkinter
from tkinter import *


class StockParser():
    def __init__(self,code_data,edit):
        self.stock_data = code_data
        self.edit=edit
        
        if self.stock_data.split(""")[1] =="": 
            pass
        else:
            print(self.stock_data.split(""")[1])
            self.stock_data=self.stock_data.split(""")[1]
            name = self.stock_data.split(",")[0]
            opening_price = float(self.stock_data.split(",")[1])
            closing_price = float(self.stock_data.split(",")[2])
            price = float(self.stock_data.split(",")[3])
            high = float(self.stock_data.split(",")[4])
            low = float(self.stock_data.split(",")[5])
            
            self.edit.insert(END,[name,opening_price,closing_price,high,low,price,])
    


class Window:
    def __init__(self, root):
        self.root = root      # 創(chuàng)建組件
        self.entryUrl = tkinter.Entry(root,width = 30)
        self.entryUrl.place(x = 65, y = 15)
        self.get = tkinter.Button(root,text = "查詢", command = self.Get)
        self.get.place(x = 350, y = 15)
        self.add = tkinter.Button(root,text = "添加", command = self.Add)
        self.delete = tkinter.Button(root,text = "刪除", command = self.Del)
        self.add.place(x = 80, y = 55)
        self.delete.place(x=120,y=55)    
        #添加布局框 下面的self.edit, self.scrollbar是插入在frame中的哦    
        self.frame = tkinter.Frame(root, bd=2)
        self.frame.place(x=200,y = 90)
        self.scrollbar = tkinter.Scrollbar(self.frame)
        self.edit = tkinter.Listbox(self.frame,yscrollcommand = self.scrollbar.set,
                width = 50, height = 22)  
        self.scrollbar.config(command=self.edit.yview)
          
        self.edit.grid(row=1,column=2)#這里用了grid,可以學(xué)習(xí)一下它的用法
        self.scrollbar.grid(row=1,column=3,sticky="ew")
        
        self.indicate=tkinter.Label(root,text="(Please input stock code:sh000000)",fg="red") #這里是完全沒(méi)有改動(dòng),沿用上一節(jié)
        self.indicate.place(x=65,y=35)
        self.StockList=[]
    def ListUpdate(self):
        self.lb=tkinter.Listbox(self.root,selectmode = BROWSE)
        for code in self.StockList:
            self.lb.insert(END,code)
        self.lb.pack()
        self.lb.place(x=50,y=90)    
    def Add(self):
        code = self.entryUrl.get()    
        if re.match(r"w{2}d{6}$",code) and code not in self.StockList:
            self.StockList.append(code) 
        else:
            pass
        self.ListUpdate()

    def Del(self):
        code=self.entryUrl.get()
        if code in self.StockList:
            self.StockList.remove(code)
        self.ListUpdate()

    def Get(self):
        if self.edit.get(0):
            print(self.edit.get(0))
            self.edit.delete(0,END)
        self.edit.insert(END,["名 字","開(kāi)盤(pán)價(jià)","閉盤(pán)價(jià)","最高","最低","當(dāng)前價(jià)格"])
        for code in self.StockList: 
            url="http://hq.sinajs.cn/list=%s" % (code,)
            page=urllib.request.urlopen(url) #為什么urllib不行呢?
            html= page.read() #記住這樣得到的是html,必要是需要用HTMLParser解析,或者手動(dòng)解析。
            stock_data=html.decode("gb2312")
            #r = requests.get(url)#當(dāng)然使用requests也是沒(méi)問(wèn)題噠               
            #stock_data= r.text  #text直接得到的就是str格式的
            #stock_content=r.content.decode("gb2312")#content則需要轉(zhuǎn)換格式
            hp = StockParser(stock_data,self.edit)

def main():

    root = tkinter.Tk()
    root.title("簡(jiǎn)易股票查詢")
    window = Window(root)
    root.minsize(600,500)
    root.maxsize(600,500)
    root.mainloop()

if __name__ =="__main__":
    main()

不足之處請(qǐng)見(jiàn)諒

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/38347.html

相關(guān)文章

  • python入門(mén)tkinter實(shí)現(xiàn)簡(jiǎn)單的RSS功能

    摘要:,庫(kù)的使用,注意已經(jīng)與有了很大不同。對(duì)于下面的,定義了一些窗口屬性,接下來(lái)在代碼中我會(huì)簡(jiǎn)單記錄一下它的用法。 這次練習(xí)的題目是實(shí)現(xiàn)一個(gè)簡(jiǎn)單的RSS功能,需要了解的知識(shí)點(diǎn): tkinter,在上一篇《簡(jiǎn)單的記事本》中已經(jīng)了解了一些tkinter的用法,在這里延續(xù)了上一篇,加深一下印象。 urllib,HTMLPaser庫(kù)的使用,注意python3已經(jīng)與python2有了很大不同。 #...

    Cheng_Gang 評(píng)論0 收藏0
  • [譯][Tkinter 教程01] 入門(mén): Label 控件

    摘要:已獲原作者授權(quán)原系列地址下面我們將以中最簡(jiǎn)單的控件控件開(kāi)始這個(gè)系列的教程在中控件用以顯示文字和圖片通常被用來(lái)展示信息而非與用戶交互譯者注也可以綁定點(diǎn)擊等事件只是通常不這么用程序員的教程怎么能少了我們尊重這個(gè)傳統(tǒng)但我們不說(shuō)讓我們來(lái)秀出吧下面的 已獲原作者授權(quán). 原系列地址: Python Tkinter Hello Tkinter Label 下面我們將以 Tkinter 中最簡(jiǎn)單的控...

    Sike 評(píng)論0 收藏0
  • python入門(mén)之一個(gè)簡(jiǎn)單記事本

    摘要:最近在練習(xí)一個(gè)關(guān)于項(xiàng)目的列表,拿到列表看到這是要實(shí)現(xiàn)一個(gè)記事本功能,剛開(kāi)始拿到題目真有點(diǎn)懵。尤其是試驗(yàn)之后發(fā)現(xiàn)一定要用類實(shí)現(xiàn)起來(lái)才簡(jiǎn)單一些,對(duì)于這點(diǎn)類,,要知道本人已經(jīng)接觸語(yǔ)言多年,但對(duì)于面向?qū)ο筮€是一竅不通。 最近在練習(xí)一個(gè)關(guān)于python項(xiàng)目的列表,拿到列表看到這是要實(shí)現(xiàn)一個(gè)記事本功能,剛開(kāi)始拿到題目真有點(diǎn)懵。雖然用python實(shí)現(xiàn)excel的處理已經(jīng)很熟悉了,且已經(jīng)把python...

    xietao3 評(píng)論0 收藏0
  • 磨刀霍霍:爬爬爬爬爬爬蟲(chóng)爬起來(lái)~

    摘要:目標(biāo)很簡(jiǎn)單,因?yàn)槲蚁胍酪幌伦C券化率,然后可視化輸出結(jié)果。證券化率的基礎(chǔ)就是上市公司的總市值,對(duì)于證券化率其實(shí)還蠻多說(shuō)法的,比如雪球的這篇文。我們可以利用這個(gè)回調(diào)函數(shù)來(lái)顯示當(dāng)前的下載進(jìn)度。 寫(xiě)在前面的叨叨 折騰了這么久,我終于在喝完一聽(tīng)快樂(lè)肥宅水后下定決心來(lái)學(xué)習(xí)寫(xiě)爬蟲(chóng)了。目標(biāo)很簡(jiǎn)單,因?yàn)槲蚁胍酪幌伦C券化率,然后可視化輸出結(jié)果。證券化率的基礎(chǔ)就是上市公司的總市值,對(duì)于證券化率其實(shí)還蠻多...

    Allen 評(píng)論0 收藏0
  • 機(jī)器學(xué)習(xí)入門(mén)筆記

    摘要:摘要本文是作者看慕課網(wǎng)學(xué)習(xí)記錄筆記,內(nèi)容技術(shù)水準(zhǔn)是入門(mén),大佬看到請(qǐng)輕言指點(diǎn),手下留情介紹人工智能的基本概念和邏輯體系研究?jī)煞N麵分類算法通過(guò)運(yùn)用分類算法,實(shí)現(xiàn)只有一層的神經(jīng)網(wǎng)絡(luò)介紹分類算法的理論基礎(chǔ)機(jī)器學(xué)習(xí)的本質(zhì)模擬人的神經(jīng)元神經(jīng)元人工神經(jīng)元 摘要 本文是作者看慕課網(wǎng)學(xué)習(xí)記錄筆記,內(nèi)容技術(shù)水準(zhǔn)是入門(mén),大佬看到請(qǐng)輕言指點(diǎn),手下留情 介紹人工智能的基本概念和邏輯體系 研究?jī)煞N麵分類算法 通...

    miguel.jiang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<