PyQt4实时显示文本内容GUI的示例

首先创建一个txt.py文件用来保存显示整理好的爬虫内容:

#! /usr/bin/env python
# -*- coding: utf-8 -*-

txt_name = ['摄影师李小蕾',
   'Match韩风',
   '师永刚',
   'CCTV5体育新闻',
   '林宥嘉YogaLin',
   '杭州微博城事',
   '五月天',
   '美女新视觉',
   '聊心情话',
   '人民网',
   '央视新闻',
   '贾玲',
   '中国广州发布',
   '丁晞文',
   'AzureJK_田柾国资源博',
   'BB_Korea美图',
   '张杰',
   '文摘精选',
   '卫视大揭秘',
   'CHERE_MAMIE_for_Lay']

txt = ['#李小蕾摄影课堂#记录最美的一瞬间,全国各地学员作品推荐。[挤眼]图1:西安学员 @媛小晨儿 图2:广州学员 @is_叶子 图3:江苏学员 @四哥哥儿 图4:河北学员 @子煜Smile 对于大场景的照片利用留白可以显意境,但我更喜欢人物眼神的捕捉和主体的抓拍,让照片更有记忆点。[挤眼]我会一直认真做好教学,建立一个好的学习圈子,让学生更强大,青出于蓝胜于蓝。每天都会花半天时间在工作台一对一辅导。',
  '? Match star ?:金智媛 不管是淡妆还是素颜都十分好看的女神 人美肤白可不是随便说说的啊',
  '里皮:我绝对不知道,我作为一个广州老教练怎么把我选到中央去了?所以蔡振华同志跟我谈话,说都决定啦,你来当主教练,我说另请高明吧。我实在也不是谦虚,我一个广州教练怎么到北京来了呢?但是呢,振华同志讲“大家已经研究决定了”,当时我就念了两句诗:“苟利国家生死以,岂因祸福避趋之。”',
  '【里皮与足协签约正式执教国足 斯科拉里留任恒大】里皮终于来了,昨天抵达香港的里皮由恒大副总裁刘永灼亲自接机,然后一同返回广州。今天里皮与许家印,以及早在广州等候中国足协主席蔡振华进行了秘密会面。三人就中国足球未来进行了交流,里皮也与中国足协在广州签约成功,他已经正式成为中国国家队主教练。而斯科拉里毫无意外将会留任恒大。',
  '一顆大心獻給給昨晚辛苦多加班次的武漢地鐵。謝謝你們讓我的歌迷朋友安全回家,好感謝。武漢?',
  '【#2016中国百强城市#榜:浙江8市上榜 杭州排第8[hold住]】#杭州身边事#近日,2016年中国百强城市排行榜出炉,浙江杭州、宁波、温州、绍兴、嘉兴、金华、台州、湖州8个城市上榜,其中杭州名列总榜单第8位,与上年比排名上升1位。北京、上海、广州继续分列前三甲。O2016中国百强城市浙8城市上榜你家乡上榜了吗?',
  '謝謝馬來西亞!這美好的夜晚,讓我們用沁涼椰子水與熱情的吉隆坡乾杯 (咦?有人拿的不是椰子水唷)#五月天2016就是演唱会# 10/29 泉州 11/5 長沙',
  '“90后”小花旦郑爽。出道短短几年,她就已经成为了炙手可热的女星,主演的多部影视剧不仅家喻户晓,而且这些作品还是各大卫视黄金档收视冠军。最近,参加的《微微一笑很倾城》更是加深了观众对她的喜爱。@郑爽工作室 @郑爽吧 #郑爽#',
  '永远不要因为别人的言论而怀疑自己,也不要因为喜欢谁而看低自己。你所有的优缺点,都是为了能接纳你现在这个样子的人而准备的。要知道,谁都想要成为更好的自己,但不代表现在的你不值得被爱。',
  '【坚持跳广场舞 姑娘跳出了马甲线】杭州92年出生的小姑娘,因为家附近跳广场舞的领舞好看,她就被吸引也跳起了广场舞。小姑娘戒了饮料,晚饭也少吃了半碗饭。不到一年的时间,从110斤到86斤,减了24斤,连马甲线都有了!医生:这就是俗话说的“管住嘴,迈开腿”。(钱江晚报)O坚持跳广场舞 90后姑娘跳出了马甲线',
  '【霜降至,这些部位护起来】①腹部:不要露出腹部,夜间盖好被子,起夜时披件衣服;②足部:鞋子要保暖、舒适、干燥,适当热水泡脚;③膝部:不轻易露出膝关节,不要运动过量,老年人必要时可戴上护膝。霜降天渐冷,转发提醒身边人[心]!',
  '大碗第一次员工大会~完整的体系。跟大家一一介绍一下。图一:大碗娱乐董事长~春花儿图二:大碗娱乐CEO @栗坤 图三:大碗娱乐CCO@孙集斌 图四:大碗娱乐VP副总裁@大碗芳欣图五:大碗娱乐CZO艺人总监@张闻儿 此处感谢服装赞助包贝尔~广告:@欢喜密探 正在优酷播出………',
  '#夜读广州#【夜深了,这里还有盏灯为你留着~】它是广州的一家24小时不打烊书店,每天真有几十号人要睡在这里一整夜的,或为了看书、或体验、或...在过去3年,有数万人次在他的店里度过了起码一个夜晚...Ta在哪?你有深夜体验的经历吗?广州还有哪些不打烊书店,书虫们跟夜猫子们分享下呗~图by@书单君',
  '那些不可回首的容颜',
  '#田柾国BEGIN##田柾国# 【视频】 161022 音乐中心 柾国特别MC CUT【f田柾国 begin】油管官方mv【O网页链接】(柾国部分翻译:喂?我是~防弹少年团的~黄金忙内~田柾国~ 柾国儿将会展现三种撒娇set~)可爱 L秒拍视频 .',
  '#杨洋#这条微博只有杨洋的老婆才可以点赞♡10S内点赞瘦10斤享瘦找@瘦子小铺',
  '现在才公布我的公众号,我都有些嫌弃我自己了[嘻嘻],看到你们和我的对话了[笑cry]我想……我想[偷笑]还有好消息,没抢到票的你,这里也是有机会的[鼓掌]',
  '这么多年,你一直在我心口幽居,我放下过天地,放下过万物,却从未放下过你。我行遍世间所有的路,逆着时光行走,只为今生与你邂逅。一一仓央嘉措《我放下过天地 却从未放下过你》',
  '#钟汉良孤芳不自赏##钟汉良#一段旷世奇缘,任凭世事百转千折,不改初衷,永不相负。由钟汉良、杨颖主演的古装战争爱情剧《孤芳不自赏》今日在湖南卫视海口招商会上曝光了部分片花,恢弘大气,精致唯美,帅气的楚王爷英勇深情、一眼万年,该剧预计于2017年春节档登陆湖南卫视金鹰独播剧场首播!@钟汉良',
  '#张艺兴##张艺兴losecontrol##张艺兴whatUneed# 161022 跪谢所有小伙伴 今日不在已悔一生 [崩溃][崩溃][崩溃][崩溃][崩溃][崩溃][崩溃][崩溃][崩溃][泪流满面][泪流满面][泪流满面][泪流满面][泪流满面][泪流满面][泪流满面][泪流满面][泪流满面][泪流满面]']

txt_key = ['摄影 意境 抓拍',
   '淡妆 素颜',
   '广州 中央 国家',
   '里皮 恒大 签约 执教',
   '武汉 歌迷',
   '百强城市 杭州身边事 排行榜',
   '马来西亚 吉隆坡 演唱会',
   '郑爽 影视剧 作品 炙手可热',
   '言论 怀疑',
   '广场舞 马甲线 领舞',
   '霜降 保暖 老人',
   '员工大会 体系 娱乐',
   '书店 不打烊 一整夜',
   '容颜',
   '田钲国 视频 音乐',
   '杨洋 点赞',
   '公众号 嫌弃 好消息',
   '路 时光 仓央嘉措',
   '钟汉良 湖南卫视 孤芳不自赏',
   '张艺兴 奔溃 泪流满面']

然后创建一个weibo_gui.py用来进行GUI页面的设计:

#! /usr/bin/env python
# -*- coding: utf-8 -*-

from PyQt4 import QtCore, QtGui
import time
import txt

class MyWidget(QtGui.QWidget):
 def __init__(self, parent=None):
  super(MyWidget, self).__init__(parent)

  #self.resize(800, 500)
  self.setWindowTitle('实时显示热门微博内容')

  self.timer = QtCore.QTimer()
  #显示微博内容
  self.txt = QtGui.QTextEdit()
  #显示微博关键字
  self.txt_key = QtGui.QLineEdit()
  #显示微博用户
  self.txt_name = QtGui.QLineEdit()

  label1 = QtGui.QLabel("微博用户名:")
  label2 = QtGui.QLabel("关键字:")
  label3 = QtGui.QLabel("微博内容:")
  otherLabel = QtGui.QLabel("备注:")
  otherLabel.setFrameStyle(QtGui.QFrame.Panel | QtGui.QFrame.Sunken)

  labelCol = 0
  contentCol = 1

  leftLayout = QtGui.QGridLayout()
  leftLayout.addWidget(label1, 0, labelCol)
  leftLayout.addWidget(self.txt_name, 0, contentCol, 1, 40)
  leftLayout.addWidget(label2, 1, labelCol)
  leftLayout.addWidget(self.txt_key, 1, contentCol, 1, 40)
  leftLayout.addWidget(label3, 2, labelCol)
  leftLayout.addWidget(self.txt, 2, contentCol, 1, 40)
  leftLayout.addWidget(otherLabel, 5, labelCol, 1, 40)
  leftLayout.setColumnStretch(0, 1)
  leftLayout.setColumnStretch(1, 3)

  self.ok_button = QtGui.QPushButton("开始爬虫", self)
  self.closePushButton = QtGui.QPushButton("关闭", self)

  rightLayout = QtGui.QVBoxLayout()
  rightLayout.setMargin(10)
  rightLayout.addStretch(7)
  rightLayout.addWidget(self.ok_button)
  rightLayout.addWidget(self.closePushButton)

  mainLayout = QtGui.QGridLayout(self)
  mainLayout.setMargin(15)
  mainLayout.setSpacing(15)
  mainLayout.addLayout(leftLayout, 0, 0)
  mainLayout.addLayout(rightLayout, 0, 1)
  mainLayout.setSizeConstraint(QtGui.QLayout.SetFixedSize)

  self.connect(self.ok_button, QtCore.SIGNAL('clicked()'),self, QtCore.SLOT("on_ok_button_clicked()"))
  self.connect(self.closePushButton, QtCore.SIGNAL("clicked()"), self, QtCore.SLOT("close()"))

 # 自定义实现爬虫的槽函数
 @QtCore.pyqtSlot()
 def on_ok_button_clicked(self):
  self.txt.clear()
  for i in range(len(txt.txt)):
   #进行添加内容
   self.txt_name.setText(txt.txt_name[i])
   self.txt.setText(' '+txt.txt[i])
   self.txt_key.setText(txt.txt_key[i])
   # 下面两条语句用于设置单条微博显示时间
   QtGui.QApplication.processEvents()
   time.sleep(2)
   self.txt.clear()

if __name__ == "__main__":
 import sys
 app = QtGui.QApplication(sys.argv)
 app.aboutToQuit.connect(app.deleteLater)
 w = MyWidget()
 w.show()
 app.exec_()

显示效果如下(说明:每隔四秒可以显示不同内容,程序中可以设置):

以上这篇PyQt4实时显示文本内容GUI的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • PyQt5每天必学之单行文本框

    本文实例为大家分享了PyQt5单行文本框展示的具体代码,供大家参考,具体内容如下 QLineEdit 是一个允许输入和编辑纯文本的单行控件.系统中的撤销.重做.复制.剪切和粘贴都可用于该控件. #!/usr/bin/python3 # -*- coding: utf-8 -*- """ PyQt5 教程 这个例子中,在QLineEdit中输入的文字实时的在QLabel中显示出来. 作者:我的世界你曾经来过 博客:http://blog.csdn.net/weiaitaowan

  • pyqt 实现在Widgets中显示图片和文字的方法

    思路非常简单:<p>创建window,设置窗口大小,创建label1,导入图片,创建label2,导入文字,show,结束!</p> import sys from PyQt5 import QtWidgets,QtGui #定义窗口函数window def window(): #我事实上不太明白干嘛要这一句话,只是pyqt窗口的建立都必须调用QApplication方法 app=QtWidgets.QApplication(sys.argv) #新建一个窗口,名字叫做w w=Qt

  • pyqt5 实现工具栏文字图片同时显示

    如下所示: import sys from PyQt5.QtWidgets import QMainWindow, QTextEdit, QAction, QApplication from PyQt5.QtGui import QIcon from PyQt5.QtCore import Qt class Example(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): te

  • Python GUI编程 文本弹窗的实例

    如下所示: out = subprocess.getstatusoutput('adb shell pm list packages') top = tk.Toplevel() top.title('包名列表') top.geometry('%dx%d' % (400, 1200)) # 设置窗口大小 t = Text(top, width=400, height=900) t.insert('1.0', "{}".format(out[1])) # 插入文本,用引号引起来"

  • PyQt4实时显示文本内容GUI的示例

    首先创建一个txt.py文件用来保存显示整理好的爬虫内容: #! /usr/bin/env python # -*- coding: utf-8 -*- txt_name = ['摄影师李小蕾', 'Match韩风', '师永刚', 'CCTV5体育新闻', '林宥嘉YogaLin', '杭州微博城事', '五月天', '美女新视觉', '聊心情话', '人民网', '央视新闻', '贾玲', '中国广州发布', '丁晞文', 'AzureJK_田柾国资源博', 'BB_Korea美图', '张

  • C#从windows剪贴板获取并显示文本内容的方法

    本文实例讲述了C#从windows剪贴板获取并显示文本内容的方法.分享给大家供大家参考.具体如下: using System; using System.Windows.Forms; namespace RobvanderWoude { class Paste { [STAThread] static int Main( string[] args ) { if ( args.Length == 0 ) { try { if ( Clipboard.ContainsText( ) ) { str

  • JS使用Date对象实时显示当前系统时间简单示例

    本文实例讲述了JS使用Date对象实时显示当前系统时间的方法.分享给大家供大家参考,具体如下: JS中包含Date对象,其提供了一些方法获取系统日期,直接上代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>www.jb51.net 获取系统时间</title> <script language="JavaScript&

  • JS实现的tab切换并显示相应内容模块功能示例

    本文实例讲述了JS实现的tab切换并显示相应内容模块功能.分享给大家供大家参考,具体如下: 思路:一层循环遍历操作的元素并获取当前遍历到的元素的下标,通过下标去选择显示对应的内容模块. 二层循环将元素恢复操作前的状态. <!--- JS --> var fbUls =document.getElementById("oUl"); var fbLis = fbUls.getElementsByTagName("li"); var aDivs = docum

  • java实现查找文本内容替换功能示例

    思路: 先看视图层,要有一个JButton控件用来选择文件,一个JTextField控件显示选中文件的绝对路径,一个JLabel控件提示用户输入搜索文本,一个JLabel控件提示用户输入替换后的文本,一个JTextField标签供用户输入要搜索的文本,一个JTextField标签供用户输入替换后的文本,一个JButton控件执行替换,一个JButton控件用来打开修改后的文件.对于选择文件按钮,使用JButton类的addActionListener()方法为其绑定事件,在该事件中定义actio

  • Asp.net实时显示文本框字数实现代码

    复制代码 代码如下: <script language="javascript" type="text/javascript"> function countNum() { var count=document.getElementById("txtText").value.length; document.getElementById("lblCount").value=count; } </script&

  • 批处理实现文本内容居中显示的代码

    a.txt 代码: [Promise don't come easy] I should have known all along. There was something wrong. I just never read between the lines. Then I woke up one day and found you on your way. Leaving nothing but my heart behind. What can I do to make it up to y

  • JavaScript简单实现关键字文本搜索高亮显示功能示例

    本文实例讲述了JavaScript简单实现关键字文本搜索高亮显示功能.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"

  • Python进度条实时显示处理进度的示例代码

    前言 在大多数时候,我们的程序会一直进行循环处理.这时候,我们非常希望能够知道程序的处理进度,由此来决定接下来该做些什么.接下来告诉大家如何简单又漂亮的实现这一功能. 如何使用这个类 使用这个类很简单,只需要三步即可完成,如下: process_bar = ShowProcess(max_steps) # 1.在循环前定义类的实体, max_steps是总的步数 for i in range(max_steps + 1): process_bar.show_process() # 2.显示当前进

  • JSP实时显示当前系统时间的四种方式示例解析

    JSP显示当前系统时间的四种方式: 第一种java内置时间类实例化对象: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getSe

随机推荐