如何从如下字符串中提取值?

2024-09-30 23:41:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我想使用键的名称从“字符串”中提取值

我的代码如下:

import urllib.request


response = urllib.request.urlopen('https://finance.google.com/finance?q=NSE:RELCAPITAL&output=json')
html =str(response.read(),'utf-8')
    print(html)

我收到的输出是:

"symbol" : "RELCAPITAL",
"exchange" : "NSE",
"id": "374785",
"t" : "RELCAPITAL",
"e" : "NSE",
"name" : "Reliance Capital Limited"
, "f_reuters_url" : "http:\x2F\x2Fstocks.us.reuters.com\x2Fstocks\x2Fratios.asp?rpc=66\x26symbol=RLCP.NS",
"f_recent_quarter_date" : "", 
"f_annual_date" : "", 

我想选择symbol键的值。我该如何做到这一点


Tags: 字符串代码名称comdateresponserequesthtml
2条回答

您可以使用regex

import re

symbol = re.search("symbol\"[\s:\"]*(.*?)\"")

if (symbol):
    print(symbol.group(1))

只要你不提供更多关于你的问题的细节,就只有开放式的答案

我会尽量回答说:

  1. 如果要处理的数据类型确实是str,那么应该尝试使用标准库中的re模块。它允许您使用正则表达式,并以某种方式为非结构化数据添加结构
  2. 如果取而代之的是由dict实例或其他结构化数据类型对象表示的数据,那么获取键的值应该和执行do_something(response["symbol"])一样直接

不幸的是,这些问题的答案都取决于您使用的编程接口,而提供一个先验的解决方案只能在一般情况下完成

相关问题 更多 >