网络爬虫和Kivy

时间:2016-07-31 10:56:29

标签: python button label kivy

我正在学习Python并决定尝试网络抓取。所以我编写的代码可以从Runescape.com获得玩家数量。但现在我想在按下按钮时将该数字设置为Kivy中的标签文本。 这是代码:

import kivy
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout

from lxml import html
import requests

class Runescape(BoxLayout):

    def __init__(self,**kwargs):
        super(Runescape,self).__init__(**kwargs)

        self.label = Label(text="")
        self.button = Button(text="press_me")

        self.add_widget(self.label)
        self.add_widget(self.button)

    def update(self, count):
        # This should update label text
        pass 


class Appcrawler:

    def __init__(self, url):
        self.url = url
        self.count= []


    def crawl(self):
        self.get_app_from_link(self.url)
        return

    def get_app_from_link(self, link):
        start_page = requests.get(link)
        tree = html.fromstring(start_page.text)

        count = tree.xpath('//p[@class="player-count"]/text()')[0]


        cnt = count.split()
        self.count.append(cnt)


def run():
    crawler = Appcrawler("http://oldschool.runescape.com/?jptg=ia&jptv=promo_box")
    crawler.crawl()
    for cnt in crawler.count:
        print cnt[3]

class MyApp(App):
    def build(self):
        return Runescape()


run()

if __name__ == '__main__':
    MyApp().run()

0 个答案:

没有答案