首先创建一个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 对于大场景的照片利用留白可以显意境,但我更喜欢人物眼神的捕捉和主体的抓拍,让照片更有记忆点。[挤眼]我会一直认真做好教学,建立一个好的学习圈子,让学生更强大,青出于蓝胜于蓝。每天都会花半天时间在工作台一对一辅导。', '"htmlcode">#! /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的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。