IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 用PyQt5写一个查询英语4级成绩的小程序,其中运用到了(selenium+xpath提取网页) -> 正文阅读

[Python知识库]用PyQt5写一个查询英语4级成绩的小程序,其中运用到了(selenium+xpath提取网页)

1.程序的主界面,主界面我用到了Qt Designer 工具来对主界面进行调整,这样比较方便也比较直观。
在这里插入图片描述
2.效果图,并且还增加了判断是否通过的逻辑
在这里插入图片描述
3.核心代码

def spider(self):
	  chrome_options = Options()
	  chrome_options.add_argument('--headless')
	  chrome_options.add_argument('--disable-gpu')
	  broser = webdriver.Chrome(executable_path='./chromedriver.exe', options=chrome_options)
	  url = "http://cet.neea.cn/html1/folder/21083/9970-1.htm"
	  broser.get(url)
	  name = self.ui.lineEdit.text()
	  num = self.ui.lineEdit_2.text()
	  broser.find_element_by_xpath('//*[@id="xm"]').send_keys(name)
	  broser.find_element_by_xpath('//*[@id="no"]').send_keys(num)
	  btn = broser.find_element_by_id('submitButton')
	  btn.click()
	  time.sleep(0.1)
  try:
      page = broser.page_source
      tree = etree.HTML(page)
      detial_score = tree.xpath('//*[@id="cjd-b"]/div[2]/div/div/span')
      all_detail = []
      all_detail.append(tree.xpath('//*[@id="cjd-b"]/div[2]/div/div/strong/text()')[0])
      for score in detial_score:
          num = score.xpath('./i/text()')[0]
          all_detail.append(num)
  except Exception as e:
      print('未查询到该用户的考试成绩!', e)
      if e:
          QMessageBox.about(self.ui, 'Error:', '未查询到该用户的考试成绩!')
  broser.quit()
  return all_detail

总结 :
代码还有很多地方都值得修改,很多功能没完善,只是简单的把功能实现了一下。
问题1:在网站进行访问的时候数据不能提取太快。因为还没加载完成,要先睡个一小会儿,才能加载出来
问题2:在调用类的初始化属性的时候在函数内部无法使用,我觉得应该是因为我使用的是利用UI文件进行对软件整体布局的读取,所以再最后调用的时候导致了不是真正调用的这个类方法,而是调用的是UI相关的属性。所以没有调用初始化属性成功。

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-08-28 08:58:18  更:2021-08-28 08:59:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 12:54:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码