用PyQt5实现了界面,使用urllib实时抓取ip138.com网站的汇率信息。

import sys
import urllib
import urllib.request
from PyQt5.QtWidgets import *class Form(QDialog):def __init__(self, parent=None):super(Form, self).__init__(parent)self.getdata()comboItems = list(self.rates.keys())textLabel = QLabel('实时汇率查询换算')self.fromComboBox = QComboBox()self.fromComboBox.addItems(comboItems)self.fromSpinBox = QDoubleSpinBox()self.fromSpinBox.setRange(0.01, 10000000.00)self.fromSpinBox.setValue(100)self.toComboBox = QComboBox()self.toComboBox.addItems(comboItems)self.toLabel = QLabel('1.00')grid = QGridLayout()grid.addWidget(textLabel, 0, 0)grid.addWidget(self.fromComboBox, 1, 0)grid.addWidget(self.fromSpinBox, 1, 1)grid.addWidget(self.toComboBox, 2, 0)grid.addWidget(self.toLabel, 2, 1)self.setLayout(grid)self.updateUi()self.fromComboBox.currentIndexChanged.connect(self.updateUi)self.toComboBox.currentIndexChanged.connect(self.updateUi)self.fromSpinBox.valueChanged.connect(self.updateUi)self.setWindowTitle('汇率  @author : likui')def updateUi(self):from_value = self.rates[self.fromComboBox.currentText()]to_value = self.rates[self.toComboBox.currentText()]money = self.fromSpinBox.value()url = 'http://qq.ip138.com/hl.asp?from=%s&to=%s&q=%s' % (from_value, to_value, money)html = self.urlopen(url)table_start = html.find('<table')count = 5td_begin = html.find('<td')while count:count -= 1td_begin = html.find('<td', td_begin + 1)temp = td_begintd_end = html.find('</td>', td_begin)amount = float(html[td_begin + 4:td_end])self.toLabel.setText('%0.2f' % amount)def getdata(self):self.rates = {}url = 'http://qq.ip138.com/hl.asp'html = self.urlopen(url)td_begin = html.find('<td>')td_end = html.find('</td>', td_begin)resource = html[td_begin:td_end]begin = resource.find('<optgroup')end = resource.find('</optgroup>')option_begin = resource.find('<option', begin)while option_begin != -1:value = resource[option_begin + 14:option_begin + 17]value_begin = resource.find('>', option_begin)value_end = resource.find('<', value_begin)rate = resource[value_begin + 1:value_end]self.rates[rate] = valueoption_begin = resource.find('<option', value_end)if option_begin > end:breakdef urlopen(self, url):ret = urllib.request.Request(url)ret.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) ''Chrome/41.0.2272.101 Safari/537.36')html = urllib.request.urlopen(ret).read().decode('GB2312')return htmlif __name__ == '__main__':app = QApplication(sys.argv)form = Form()form.show()app.exec_()

转载于:https://www.cnblogs.com/lkpp/p/7400036.html

PyQt5实时汇率查询相关推荐

  1. pyside2/pyqt5实时显示时间

    pyside2/pyqt5实时显示时间 直接上代码 import sys from PyQt5.QtWidgets import QMainWindow, QApplication, QLabel f ...

  2. 英特尔Realsense学习笔记二:pyqt5 实时显示 Realsense D415 深度图像和彩色图像

    要做一个D415相机的最高分辨率的拍摄程序,深度相机最高分辨率为1280*720,普通屏幕是不能同时显示两个1280*720的,由于拍摄的时候由于是拍摄人体面部,所以深度图和彩色图像都截取中间的640 ...

  3. 免费实时汇率查询Api接口

    接口地址 https://api.it120.cc/gooking/forex/rate?fromCode=CNY&toCode=USD 接口说明 本接口使用 GET 方式请求即可,你可以直接 ...

  4. 常用汇率查询货币列表实时汇率查询换算小demo

    #这个小demo是本人根据官方api自行编写,亲测可用# 1.导入相关jar包 注意: 1.这里导包错误会报 java.lang.ClassNotFoundException: org.apache. ...

  5. 银行实时汇率查询易语言代码

    .版本 2 .子程序 __启动窗口_创建完毕 '添加并使用<精易模块> Send_API () .子程序 Send_API .局部变量 REQU_Data, 文本型, , , 提交字符串 ...

  6. java实时汇率的接口_eoLinker-API_Shop_汇率查询_API接口_Java调用示例代码

    eoLinker-API Shop 汇率查询 Java调用示例代码 汇率查询 提供汇率转换.单个货币对应的热门货币汇率行情,包括人民币.美元.欧元.英镑等100多种货币的实时汇率查询. 该产品拥有以下 ...

  7. java实时汇率的接口_汇率-免费API,收集所有免费的API

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...

  8. 通过python调用海康威视工业摄像头并进行图像存储,同时使用opencv实时图像显示(数据流问题已解决)

    通过python调用海康威视工业摄像头并进行图像存储,同时使用opencv实时图像显示. 1:图像存储方式 先说情况,本人是做视觉检测的需要高倍率摄像头进行实时检测,也就是需要深度学习进行图片数据处理 ...

  9. 外汇汇率接口 java_基于java的货币汇率接口调用代码实例

    基于java的货币汇率接口调用代码实例 基于JAVA 的货币汇率接口调用代码实例 代码描述:基于JAVA 的货币汇率接口调用代码实例 代码平台:聚合数据 import java.io.Buffered ...

最新文章

  1. GitHub为所有人免费提供了所有核心功能-这就是您应该关心的原因
  2. 零基础学软件测试去哪家培训机构好
  3. 计算机视觉(CV)的算法有哪些,具体都有哪些特点?
  4. 读博熬不住了,拿个硕士学位投身业界如何?看过来人怎么说
  5. 关于 app测试工具
  6. 在大厂工作5年的大神,给前端初学者的四大建议,收藏咯
  7. sharepoint2013列表实现项目级权限控制
  8. python json解析 超过对象_Python | 关于Requests与Json的使用小结
  9. Inno Setup 软件安装包制作
  10. Linux中关于API函数与系统调用
  11. linux如何磁盘管理工具下载,Linux_Linux系统的磁盘空间管理工具, 1.fdisk -lDis - phpStudy...
  12. 他 25 岁进贝尔实验室,32 岁创建信息论,40 岁办达特茅斯会议 | 人物志
  13. 轻松安装、卸载Linux软件
  14. iMazing2023iOS系统设备数据传输与备份工具使用教程
  15. 2021年施工员-装饰方向-岗位技能(施工员)考试报名及施工员-装饰方向-岗位技能(施工员)找解析
  16. java lint_Java代码规范与质量检测插件SonarLint
  17. 中国地质大学计算机研究生考试目录,2017年中国地质大学(武汉)资源学院考研专业目录及考试科目...
  18. Nginx :user nobody
  19. 计算机网络中的IP到底是什么?
  20. 浅谈三大虚拟化厂商的优缺点

热门文章

  1. mysql 函数返回类型set_mysql自定义函数如何返回多个值
  2. 时序分析 44 -- 时序数据转为空间数据 (三) 格拉姆角场 python 实践 (上)
  3. NOIP模拟赛 麻将
  4. Word文档Aspose.Words使用教程:构建适用于Android的Word转PDF应用程序
  5. Arduino ESP32 Web网页控制RGB灯
  6. 阿里云服务器证书登录如何配置
  7. 山西省2021年高考试成绩查询,山西省2021年普通高等学校招生体育专业考试成绩查询入口...
  8. 电脑查服务器型号,怎么在服务器的操作系统中查看服务器的型号
  9. 使用MATLAB快速提取图片数据
  10. 2022.01.02 Acwing寒假每日一题 笨拙的手指