python制作窗⼝界⾯_python爬⾍如何制作可视化界⾯?
(pyqt5环境配置篇)
却道天凉好个秋~
pyqt5+python+qtdesigner+pycharm制作⼀个可视化的GUI爬⾍⼯具
前⾔:
最近闲来⽆聊⼜开始了py之路,这次需要的是制作⼀个贴吧的关键词搜索相关帖⼦的⼯具,开始以为百度贴吧没有“全吧搜索”这样的功能,后⾯发现是我多虑了,于是把重⼼转移到了可视化⼩程序的制作⽅⾯,爬⾍相关逻辑则直接了现成的....
现在来记录⼀下踩的坑:
windows自带虚拟机我基本把所有⽹上制作python可视化的教程都看了⼀遍,最后发现所有的教程如出⼀辙,都是⼀个模⼦刻出来的。并且⼀篇原创,⼗篇以上的转载。这⾥我要多插⼏句话,打个⽐⽅,在CSDN某⼤佬发布的⼀篇教程,会被CSDN的其他博主,博客园,简书,个⼈博客等等等等全部转载⼀遍,并且他们还不转载全,缺胳膊少腿,很多关键性步骤给跳过,有些说明⾃⼰给乱改⼀通,我都怀疑他们会不会写程序,看没看懂,就为了点击率给转过去,服⽓!
给python爬⾍上界⾯⽹上真⼼没什么太多教程,这也是我之前想把我的那些⼩爬⾍做成⼯具没有做出来的原因,百度搜不到教程啊!不过难得这次有闲情逸致,就再次查阅了⼤量资料,了解到⽹传⼤致两种⽅法,⼀是通过图形库敲代码⼿动绘制,⼆是通过⼀些框架来做壳⼦,⽽两者的代表分别是Tkinter和PYQT5。tkinter其实很适合新⼈做⼀些不是很复杂的界⾯,⼏个框框按钮,⼏⾏⽂本⾜以⽀持做出⼤多数⼩⼯具了,⽽PYQT5的使⽤需要⼀定的学习成本,肯定是⾼于前者的,不过他的使⽤相对其他框架也简单很多,反正也就是拖拽⼏下,然后学习⼀下布局和属性什么的(很烦),就可以上⼿了。好在博主⼤⼀的时候学习过QT Designer,这次就决定使⽤pyqt5制作了。excel怎么把重复的筛选出来
爬虫软件 app然后pyqt5+pycharm+qtcreator的环境就弄了⼀天........
那么关于环境配置,⽬前⽹传的所有教程基本都是如下流程,因为篇幅有限,我只写⼀个⼤致的流程,因为他们真的都如出⼀辙,具体的我会放出我收藏的⼏个有代表性的教程的链接:
1.Python3.7安装
这⼀步没什么好说的,现在py3有直接安装的exe程序了,⽐我当初安装py2⽅便太多...建议安装默认路径,直接放c盘吧,不然后⾯你懂的。
2.安装pycharm
最基础的excel制作表格视频python编程⽐较好的idle了吧,⽽且我也⼀直使⽤的它,所以这次配环境也不需要操⼼这个。
3.安装PyQt5,这个也简单,直接万能pip命令。
4.把安装好的pyqt5环境配置的pycharm中。
5.配置完成可以看到Pycharm的菜单栏中的Tools-External tools⾥可以看到新增的外部⼯具。
6.打开Qt designer⼿动拖拽出ui界⾯,保存后会⽣成.ui⽂件,然后⽤之前的⼯具⾃动转成.py
7.将ui的py⽂件和爬⾍逻辑关联起来,就可以完成你的爬⾍⼩⼯具了。
下⾯开始讲配置过程中遇到的坑:
1.⽹上的教程只说了安装pyqt5,然后在后⾯把它导⼊到pycharm的过程中我死都没发现他们教程⾥⾯说的pyqt5的⽂件夹⾥⾯有⼀个⽂件,后⾯终于知道还需要pip ⼀个pyqt5-tools,然后他才会出现在pyqt5的⽂件夹⾥。或者你可以直接下⼀个对应版本的qt,安装之后也有,可是教程⾥⾯没说啊,还好我聪慧⾃⼰解决了。
2.Qt的各种ui控件⼿动布局设置⽅式,如何让他们在你想要的位置并且能⾃适应窗⼝⼤⼩........嗯,我到现在都还没有解决。
3.ui⽂件转成py⽂件之后是不能直接运⾏的,需要加⼀个⼊⼝main函数,⽹传版本⼤致如下:
import myUI
from PyQt5.QtWidgets import QApplication, QMainWindowimage是什么格式的文件
import sys
if __name__=='__main__':
app = QApplication(sys.argv)
MainWindow = QMainWindow()
ui = myUI.Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
css图片居中样式怎么设置
<_())
然后我复制过去这个QMainWindow()函数是⽆法识别的,然后其他版本还有什么QWidget,QDialog什么的。这就让⼈头疼了,不过好在博主在坑⾥躺了⼀段时间,突然想起来当初学了Qt的,也有这个问题。然后想起来⼤概在qt⾥⾯这三者都是对话窗⼝类,但是都是有却别的,也有什么⽗⼦之分好像。最后经过尝试,将上⾯的改成QWidget.QMainWindow()就能正确识别函数了。这个还是应该跟你创建ui时候选择的窗⼝有关,也要注意它⾃动⽣成的py⽂件导⼊了哪些,有哪些可能是没导⼊的要加上。反正如上代码的app,ui,window这⼏个变量加上,就能正确显⽰你设计的窗⼝了,其他每个教程的内容不⼀样,会有些许出⼊,灵活变通就好~
以上,不想再写了,有问题留⾔吧,后⾯把⼩⼯具做出来了再写⼀个实战篇吧。
另外有⼀个感触,真正的技术⼤佬(我是⼩⽩,也有这个感受)是不屑于⼀字⼀句来细细写⽂章讲清楚每⼀处的(内⼼os:实现功能已经很累了,你居然让我再梳理了讲⼀遍??)⽽那些点击率⾼的⽔⽂⼜恰恰是那些不懂技术的营销博主偷来的,他们⾃⼰也看不懂,下⾯却有⼀堆⼩⽩问这问那,这就很尴尬了....不过确实,学完⼀个东西还是要整理⼀遍的,把这些杂糅的知识系统性的梳理⼀遍也不容易呀!但最后对⾃⼰还是能进⼀步的提⾼,加深印象,后⾯忘了也好捡起来,继续加油吧~

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。