Python实战系列-上海银行间同业拆借利率最新报错解决方案
上海银行间同业拆借利率在运行过程中发现iframe标签已经不见:
查看元素发现ifram标签已经不见
# In[7]:browser.switch_to.frame('volume10BondDealQuotesEN')
data = browser.page_source
data
执行这个报错:
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"[id="volume10BondDealQuotesEN"]"}
(Session info: chrome=105.0.5195.127)
如何解决?注释掉browser.switch_to.frame这行代码
# In[7]:#browser.switch_to.frame('volume10BondDealQuotesEN')
data = browser.page_source
data
注释后发现获取table的出现问题了,经过debug修改成table[3]改为table[12],为什么是table[12],我用的是PyCharm开发工具debug查看table如下:
从这个里面去找
import pandas as pd
table = pd.read_html(data) # table是一个列表,里面有该网页里的所有表格
df = table[12]df
运行结果是:
这里面有用的是第2、3、5列
import pandas as pd
table = pd.read_html(data) # table是一个列表,里面有该网页里的所有表格
#df = table[3]
df = table[12]# 提取所需列,并修改列名
df = df[[1, 2, 4]]
df.columns = ['期限', 'Shibor(%)', '涨跌(BP)']M_1 = df[df['期限'] == '1M']['Shibor(%)']
M_3 = df[df['期限'] == '3M']['Shibor(%)']# 计算3M利率 - 1M利率
diff = float(M_3) - float(M_1)
diff = round(diff, 3) # 保留3位小数diff
运行后结果是:
这里面的url_2代码注释掉:
from selenium import webdriver
import pandas as pd
browser = webdriver.Chrome()
url = 'http://www.shibor.org'
browser.get(url)# url_2 = 'http://www.shibor.org/shibor/web/html/shibor.html' # 这个得访问过上面的网址,才能访问这个网站
# browser.get(url_2)data = browser.page_sourcetable = pd.read_html(data) # table是一个列表,里面有该网页里的所有表格
df = table[12]# 修改列名
df = df[[1, 2, 4]]
df.columns = ['期限', 'Shibor(%)', '涨跌(BP)']M_1 = df[df['期限'] == '1M']['Shibor(%)'] # 变量命名不可以是1M
M_3 = df[df['期限'] == '3M']['Shibor(%)']# 计算3M利率 - 1M利率
diff = float(M_3) - float(M_1)
diff = round(diff, 3) # 保留3位小数diff
最后这个地方,如果浏览器较新的话,browser.find_element_by_xpath这个地方会报错,要改成browser.find_element,如下:
# # 补充知识点:浏览器同级页面切换 - switch_to.window()函数讲解# In[27]:from selenium import webdriver
browser = webdriver.Chrome()
url = 'https://www.baidu.com/s?rtt=1&tn=news&word=阿里巴巴'
browser.get(url)# 模拟点击第一条新闻链接,会新打开一个浏览器窗口展示该新闻详情 //*[@id="1"]/div/h3/a
#browser.find_element_by_xpath('//*[@id="1"]/div/h3/a').click()
browser.find_element(by=By.XPATH,value='//*[@id="1"]/div/h3/a').click()handles = browser.window_handles # 获取当前浏览器的所有窗口句柄
browser.switch_to.window(handles[-1]) # 切换到最新打开的窗口data = browser.page_source # 此时获取的网页源代码就是最新打开窗口的内容
data# In[29]:handles = browser.window_handles # 获取当前浏览器的所有窗口句柄
browser.switch_to.window(handles[-1]) # 切换到最新打开的窗口data = browser.page_source
data
Python实战系列-上海银行间同业拆借利率最新报错解决方案相关推荐
- 银行间同业拆借利率有什么用?
银行间同业拆借利率是银行间无担保短期借贷使用的利率,是金融机构确定资金成本的重要指标. 举个例子:A银行短期内急需用钱(借钱时间最长1年),需要向其他银行借钱,这时A银行借的钱需要承担的利息就是用银行 ...
- Python 实战系列-微信或网页远程控制电脑
Python 实战系列-微信或网页远程控制电脑 本系列课程为Python实战系列课程:使用微信控制电脑,使用Python的Web框架Flask搭建网页, 并使用网页控制电脑:使用wxPython编写图 ...
- python中利用lxml模块解析xml文件报错XMLSyntaxError: Opening and ending tag mismatch
今天在代码中第一次使用lxml解析xml文件时出错了, XMLSyntaxError: Opening and ending tag mismatch: keyEffectiveDate line 2 ...
- python打印汉字报错_python中文输出报错解决方案(实例教程)
对于刚刚开始接触python这门语言的人来说,可能会对于如何使用这门语言来进行编程会存在有一定的疑惑.如何使用中文来进行程序的编写,会不会与英文的编写有不一样的地方?今天我们就来看一下在python中 ...
- selenium IE保护模式报错解决方案(使用python写注册表)
selenium IE保护模式报错解决方案 JAVA:https://www.cnblogs.com/feifeidxl/p/4551363.html java的处理可以参考此博客,实践可行,使用的s ...
- Python实战系列-东方财富网显示研报报错最新解决方案
最近在查东方财富网最新研报的时候,发现报错,第一怀疑就是html又变了,果然是的:https://so.eastmoney.com/Yanbao/s?keyword=%E5%AE%81%E5%BE%B ...
- python psutil库安装_安装psutil模块报错安装python-devel
psutil/_psutil_linux.c:9:20: 错误:Python.h:没有那个文件或目录 In file included from psutil/_psutil_linux.c:19: ...
- Python: pycharm debug调试点击结束断点报错KeyboardInterrupt
原因:pycharm版本的问题 mac: MacBook Pro(13英寸,M2,2022年) pycharm版本: python版本:python3.9 没有debug,代码可以正常运行 d ...
- python mysqldb安装_解决centos7 安装MySQLdb-python 报错 方案
运行 pip install MySQL-Python 报错: 云服务器 Command python setup.py egg_info failed with error code 1 in 继续 ...
最新文章
- 一块GPU就能训练语义分割网络,百度PaddlePaddle是如何优化的?
- php数据库额外属性,PHP神秘的额外数据库插入
- hust1343(贪吃蛇模拟)
- 数据结构与算法————稀疏数组
- 【飞鸽传书】往往会说其应当具备可维护性
- 2.3绘制构造线与射线
- mysql外键约束脚本_使用SQL脚本创建数据库,操作主键、外键与各种约束(MS SQL Server)...
- linux虚拟机如何ping,linux虚拟机与真机互相ping的问题
- 兼具颜值与智慧 华为Mate 10 Pro体验图赏
- ThinkPad T470P拆机加固态硬盘 建兴 T11 plus
- 【脑电数据十折交叉验证】实现对数据自动划分训练集与测试集得出平均分类准确率
- 题目 2260: 求arccos值
- C#winform软件长时间运行后无响应问题解决
- Day01_01_Linux_Ubuntu教程之Linux系统简介
- twiproxy - 基于GTAP 0.4的twitter API proxy
- c++学习:多线程;顺序容器;智能指针
- elasticsearch定时删除过期索引index
- 深入理解Linux启动过程 0号进程,1号进程
- Apache服务器的安全性及实现
- chrom如何兼容本地file文件
热门文章
- 《消费者行为学》读书笔记 第一章 消费者行为学导论
- 内蒙古师范大学计算机科学技术学院分数线,2019内蒙古师范大学录取分数线及历年专业分数线统计表【文科 理科】...
- 【细聊】torch.nn.init 初始化
- 百度推广引流一个成本多少?百度推广怎么预估成本?
- (转)高并发高流量网站架构详解
- 微信小程序——条件渲染
- C语言10以内加法口诀表,10以内加减法口诀表可打印.doc
- Python云端系统开发——将Python数据分析代码发布到Django网站上
- Linux实现剪刀石头布游戏,Python剪刀石头布游戏
- JS逆向 | 某车帝登录参数逆向