首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从动态网页抓取数据时,从Select对象中选择一个选项

从动态网页抓取数据时,从Select对象中选择一个选项
EN

Stack Overflow用户
提问于 2020-11-10 11:50:04
回答 1查看 425关注 0票数 0

我正在做一些网络抓取,我想知道如何从下拉框中选择数据并刮掉它。这是页面:https://www.cbn.gov.ng/rates/ExchRateByCurrency.asp

正如你所看到的,它是一个动态网页,有一个选项可以显示你想要多少条目。

我想要做的是选择最大值(100),然后再从表中抓取数据。知道我该怎么做吗?下面是一些您可以构建的代码:

代码语言:javascript
运行
复制
Firefox = Firefox()
Firefox.get(source["Exchange Rates by Currency"])

sleep(30)

html = Firefox.page_source
html = bs(html,"html.parser")
table = html.find("table",id="exTable")

select_item = html.find("select")

它会把你带到桌子上,然后分别选择物品。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-11 04:36:52

尝试下面的方法-- 请求 --当涉及到请求时,使用简单、简单、可靠、快速和更少的代码。我已经从网站本身获取API URL后,检查了谷歌铬浏览器的网络部分。

下面的脚本到底在做什么:

  1. 首先,它将接受API并执行一个GET请求。
  2. 获得数据后,脚本将使用json.loads库解析JSON数据。
  3. 最后,它将按货币列表对汇率列表进行遍历,并将它们打印为ex:-买入汇率、中央汇率、货币、卖出汇率、汇率日期。 从urllib3导入json导入请求。异常导入requests.packages.urllib3.disable_warnings(InsecureRequestWarning) InsecureRequestWarning def scrap_cbn_data():URL = '=1605068636834‘#API URL响应= requests.get(URL,verify=False) # GET request json_result = json.loads(response.text) #Parse JSON数据使用json.loads extracted_data =json_json.loads‘data’#为extracted_data中的项目提取数据:#迭代按货币打印(‘-’* 100)打印的汇率列表(‘-’*100)打印(‘买价:',项目’收购率‘)打印(’中央汇率:',项目‘中央汇率’)打印(‘货币:',项目’货币‘)打印(’汇率日期:',项目‘速率’)打印(‘销售率:',项目’销售率‘)打印(’-‘* 100) scrap_cbn_data()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64768398

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档