源码 如下:

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'day01.ui'

#

# Created by: PyQt5 UI code generator 5.13.2

#

# WARNING! All changes made in this file will be lost!

from PyQt5 import QtCore, QtGui, QtWidgets

import sys

import requests

from bs4 import BeautifulSoup

import bs4

import os

import time

os.environ["CUDA_VISIBLE_DEVICES"] = "-1"

class Ui_mainWindow(object):

def setupUi(self, mainWindow):

mainWindow.setObjectName("mainWindow")

mainWindow.resize(1200, 400)

self.centralwidget = QtWidgets.QWidget(mainWindow)

self.centralwidget.setObjectName("centralwidget")

self.pushButton = QtWidgets.QPushButton(self.centralwidget)

self.pushButton.setEnabled(True)

self.pushButton.setGeometry(QtCore.QRect(1000, 20, 93, 28))

self.pushButton.setObjectName("pushButton")

self.textEdit = QtWidgets.QTextEdit(self.centralwidget)

self.textEdit.setGeometry(QtCore.QRect(140, 80,600, 100))

self.textEdit.setObjectName("textEdit")

self.label = QtWidgets.QLabel(self.centralwidget)

self.label.setGeometry(QtCore.QRect(40, 70, 91, 61))

self.label.setObjectName("label")

mainWindow.setCentralWidget(self.centralwidget)

self.menubar = QtWidgets.QMenuBar(mainWindow)

self.menubar.setGeometry(QtCore.QRect(0, 0, 815, 26))

self.menubar.setObjectName("menubar")

mainWindow.setMenuBar(self.menubar)

self.statusbar = QtWidgets.QStatusBar(mainWindow)

self.statusbar.setObjectName("statusbar")

mainWindow.setStatusBar(self.statusbar)

self.textEdit.setText('预备,点击开始 ')

self.retranslateUi(mainWindow)

QtCore.QMetaObject.connectSlotsByName(mainWindow)

self.pushButton.clicked.connect(self.mypachong)

#QtWidgets.QApplication.processEvents() # 界面实时刷新

# QtWidgets.QApplication.processEvents()

def mypachong(self):

self.head ={'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36','Connection': 'close'}

self.url = 'https://mil.ifeng.com'

self.r = requests.get(self.url,headers=self.head,timeout=30)

self.r.encoding = 'utf-8'

self.soup = BeautifulSoup(self.r.text, 'lxml')

self.data = self.soup.select( 'p>a')

print('元素类型:',type(self.data))

print('元素数量:',len(self.data))

print(self.data)

for i in range(9):

x = self.data[i].get('href')

urls='http:'+x

print(urls)

html=requests.get(urls)

html.encoding='utf-8'

soups=BeautifulSoup(html.text,'lxml')

wenben=soups.select('#root > div > div.content-3--Ol8sK > div.leftContent-1ESnktbA > div.artical-_Qk9Dp2t > div.main_content-LcrEruCc > div:nth-child(1) > div.text-3zQ3cZD4')[0].text

print(wenben)

self.textEdit.setText(wenben)

def retranslateUi(self, mainWindow):

_translate = QtCore.QCoreApplication.translate

mainWindow.setWindowTitle(_translate("mainWindow", "天下无双"))

self.pushButton.setText(_translate("mainWindow", "点我"))

self.label.setText(_translate("mainWindow", "情报:"))

if __name__== '__main__':

app = QtWidgets.QApplication(sys.argv)

MainWindow = QtWidgets.QMainWindow()

ui = Ui_mainWindow()

ui.setupUi(MainWindow)

MainWindow.show()

sys.exit(app.exec_())

修改的地方:(一)加入list=[],注意放在下面主函数内,

(二)select方法后用[0].text.split()

(三)将最后的列表str化后放入textEdit。效果如下:

完整代码:

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'day01.ui'

#

# Created by: PyQt5 UI code generator 5.13.2

#

# WARNING! All changes made in this file will be lost!

from PyQt5 import QtCore, QtGui, QtWidgets

import sys

import requests

from bs4 import BeautifulSoup

import bs4

import os

import time

os.environ["CUDA_VISIBLE_DEVICES"] = "-1"

class Ui_mainWindow(object):

def setupUi(self, mainWindow):

mainWindow.setObjectName("mainWindow")

mainWindow.resize(1200, 400)

self.centralwidget = QtWidgets.QWidget(mainWindow)

self.centralwidget.setObjectName("centralwidget")

self.pushButton = QtWidgets.QPushButton(self.centralwidget)

self.pushButton.setEnabled(True)

self.pushButton.setGeometry(QtCore.QRect(1000, 20, 93, 28))

self.pushButton.setObjectName("pushButton")

self.textEdit = QtWidgets.QTextEdit(self.centralwidget)

self.textEdit.setGeometry(QtCore.QRect(140, 80,800, 300))

self.textEdit.setObjectName("textEdit")

self.label = QtWidgets.QLabel(self.centralwidget)

self.label.setGeometry(QtCore.QRect(40, 70, 91, 61))

self.label.setObjectName("label")

mainWindow.setCentralWidget(self.centralwidget)

self.menubar = QtWidgets.QMenuBar(mainWindow)

self.menubar.setGeometry(QtCore.QRect(0, 0, 815, 26))

self.menubar.setObjectName("menubar")

mainWindow.setMenuBar(self.menubar)

self.statusbar = QtWidgets.QStatusBar(mainWindow)

self.statusbar.setObjectName("statusbar")

mainWindow.setStatusBar(self.statusbar)

self.textEdit.setText('预备,点击开始 ')

self.retranslateUi(mainWindow)

QtCore.QMetaObject.connectSlotsByName(mainWindow)

self.pushButton.clicked.connect(self.mypachong)

#QtWidgets.QApplication.processEvents() # 界面实时刷新

# QtWidgets.QApplication.processEvents()

def mypachong(self):

self.head ={'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36','Connection': 'close'}

self.url = 'https://mil.ifeng.com'

self.r = requests.get(self.url,headers=self.head,timeout=30)

self.r.encoding = 'utf-8'

self.soup = BeautifulSoup(self.r.text, 'lxml')

self.data = self.soup.select( 'p>a')

print('元素类型:',type(self.data))

print('元素数量:',len(self.data))

print(self.data)

for i in range(10):

x = self.data[i].get('href')

urls='http:'+x

print(urls)

html=requests.get(urls)

html.encoding='utf-8'

soups=BeautifulSoup(html.text,'lxml')

wenben=soups.select('#root > div > div.content-3--Ol8sK > div.leftContent-1ESnktbA > div.artical-_Qk9Dp2t > div.main_content-LcrEruCc > div:nth-child(1) > div.text-3zQ3cZD4')[0].text.split()

print(type(wenben))

list.append(wenben)

print(list)

self.textEdit.setText(str(list))

with open('D:\pylearning\day01.txt', 'a+', encoding='utf-8') as f:

f.writelines(str(list))

# #self.textEdit.append(wenben)

def retranslateUi(self, mainWindow):

_translate = QtCore.QCoreApplication.translate

mainWindow.setWindowTitle(_translate("mainWindow", "天下无双"))

self.pushButton.setText(_translate("mainWindow", "点我"))

self.label.setText(_translate("mainWindow", "情报:"))

if __name__== '__main__':

app = QtWidgets.QApplication(sys.argv)

MainWindow = QtWidgets.QMainWindow()

list=[]

ui = Ui_mainWindow()

ui.setupUi(MainWindow)

MainWindow.show()

sys.exit(app.exec_())

python导入数据库的数据怎么在qt界面里刷新_python爬虫开发通过qt界面显示,爬取数据只能显示最后一次循环结果,appen追加时程序卡住。(已经解决)!!!...相关推荐

  1. python导入数据库的数据怎么在qt界面里刷新_Python中使用pyqtgraph库实现数据可视化之逐点刷新波形图...

    背景 pyqtgraph是Python平台上一种功能强大的2D/3D绘图库,相对于matplotlib库,由于内部实现方式上,使用了高速计算的numpy信号处理库以及Qt的GraphicsView框架 ...

  2. Python 爬虫实战,模拟登陆爬取数据

    Python 爬虫实战,模拟登陆爬取数据 从0记录爬取某网站上的资源连接: 模拟登陆 爬取数据 保存到本地 结果演示: 源网站展示: 爬到的本地文件展示: 环境准备: python环境安装 略 安装r ...

  3. python爬取大众点评数据_python爬虫实例详细介绍之爬取大众点评的数据

    python 爬虫实例详细介绍之爬取大众点评的数据 一. Python作为一种语法简洁.面向对象的解释性语言,其便捷性.容易上手性受到众多程序员的青睐,基于python的包也越来越多,使得python ...

  4. python爬虫影评_Python爬虫(二十)_动态爬取影评信息

    本案例介绍从JavaScript中采集加载的数据.更多内容请参考:Python学习指南 #-*- coding:utf-8 -*- import requests import re import t ...

  5. python爬取豆瓣电影信息可行性分析_Python爬虫实现的根据分类爬取豆瓣电影信息功能示例...

    本文实例讲述了Python爬虫实现的根据分类爬取豆瓣电影信息功能.分享给大家供大家参考,具体如下: 代码的入口:if __name__ == '__main__': main()#! /usr/bin ...

  6. python爬斗鱼直播_Python爬虫:利用API实时爬取斗鱼弹幕

    原标题:Python爬虫:利用API实时爬取斗鱼弹幕 这些天一直想做一个斗鱼爬取弹幕,但是一直考试时间不够,而且这个斗鱼的api接口虽然开放了但是我在github上没有找到可以完美实现连接.我看了好多 ...

  7. java爬虫问题二: 使用jsoup爬取数据class选择器中空格多选择怎么解决

    问题描述: 在使用jsoup爬取其他网站数据的时候,发现class是带空格的多选择,如果直接使用doc.getElementsByClass("class的值"),这种方法获取不到 ...

  8. PYTHON爬虫神站——curl.trillworks 爬取数据只需两步!

    前不久作者因为需要爬取一些建筑类数据 于是又又又准备苦哈哈的打开百度搜索"如何爬取XX",然后看html,找到关键点再挨个循环访问.....以下省略. 但这次 这款朋友推荐网站拯救 ...

  9. python实例豆瓣音乐代码_Python爬虫实战(3)-爬取豆瓣音乐Top250数据(超详细

    前言 首先我们先来回忆一下上两篇爬虫实战文章: 第一篇:讲到了requests和bs4和一些网页基本操作. 第二篇:用到了正则表达式-re模块 今天我们用lxml库和xpath语法来爬虫实战. 1.安 ...

最新文章

  1. SLAM | 视觉SLAM中特征点法与直接法结合:SVO
  2. Apache启动报错
  3. Android手机开机自动启动
  4. 戏说 Windows GDI (1)
  5. 阿里云管理Android项目,Android-Sophix
  6. php获得可靠的精准的当前时间 ( 通过授时服务器 )
  7. python的等待代码是什么_Python selenium 三种等待方式详解
  8. js list操作_使用 Node.js 实现一个命令行 todo-list(1)- 基本功能
  9. 面向对象程序设计简介
  10. RabbitMQ消息队列-VirtualHost与权限管理
  11. Linux查看进程下的线程
  12. GNU Binutils简介及基本用法
  13. android webview 清空内容,Android WebView清空缓存
  14. linux 驱动打印机驱动怎么安装步骤,Linux 打印机驱动安装
  15. SolidWorks2016安装
  16. html什么是一级标题,一级标题是什么(论文一二三级标题范本)
  17. 【深度学习6】对比学习(Contrastive Learning)入门
  18. 【解决电脑】开机屏幕左键无反应,右键变加载;选择文件夹未响应,卡顿40秒后恢复;新建文件夹正常,删除移动卡顿
  19. 【读者来信】你所认识的世界不一定是真实的
  20. 近年创业目睹之怪现状

热门文章

  1. 用linux的curl实现自动投票
  2. 如何找到网站真实ip
  3. kubernetes集群部署(四):部署heapster+influxdb
  4. 基于STC15F104W下的温湿度显示(DHT11)(OLED)
  5. 硅光模块和普通光模块的区别以及两者的市场前景分析
  6. ASP网页制作,简单图书管理系统
  7. 产品文案怎么吸引人?金句很重要
  8. Python注释及中文注释
  9. 技术团队管理要求 网文节选要点,内部培训用
  10. 解析富有童趣的人工智能早教机器人