requests执行阻塞界面的问题

我最近使用pyqt5编写了一个界面

img


想要实现的功能是,点击开始按钮,直接启动我的爬虫文件,然后将爬取到的数据返回到界面中
但是出现了一个问题,当爬虫正在运行的时候,界面是不能操作的
也就是说,爬虫是需要一定时间的 在这个时间里 我的界面无法使用,按钮无法点击这样的
爬虫使用的是requests模块,实现的功能是:简单的提取新闻的标题等信息

这个问题困扰了我很长时间了
搞不懂是应该用多线程解决,还是异步的问题
还是本身requests的问题

因为如果网站较多的话,长时间不能操作界面,这个使用感觉就特别不好
烦请会的同学帮帮忙,谢谢!

主界面的的线程应与采集、运算、数据提取线程隔离开,否则,单一线程运行这些,那么在循环完成(采集完成)前,线程资源是独占的,你的界面根本没有资源去响应