试图从文本中分割、剥离、替换似乎都被认为是同一个字符的字符

2024-10-01 00:18:23 发布

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

import requests
from bs4 import BeautifulSoup

page = requests.get("http://api.mesowest.net/v2/authapikey=KzdBcPu5cCptvhuS1tagDhZ3CqeQB878nWl")

soup = BeautifulSoup(page.content, "lxml")

myWeather = soup.findAll("body")
token = [elem.text.strip() for elem in myWeather]
rtoken = token[0:1]

print (rtoken)

结果是:'{"TOKEN": "7657b5ce64f4425d8a6cf30684e62b18"}'

我只是想抓住象征性的一块,即"7657b5ce64f4425d8a6cf30684e62b18"。我尝试了token[11,43][-2,32]等各种方法,但所有字符似乎都是在[0]中定义的,因此rtoken = token[0:1]代码选择所有字符,而不是第一个字符。我也试图剥离所需的价值观以及取代,似乎无法得到任何工作


Tags: fromimporttokenapihttpgetpage字符
2条回答

@Ofer实际上给出了一个糟糕的建议

响应内容类型是JSON-不应使用HTML解析器对其进行解析

使用requests响应的^{} method

import requests

page = requests.get("http://api.mesowest.net/v2/auth?apikey=KzdBcPu5cCptvhuS1tagDhZ3CqeQB878nWl")
token = page.json()['TOKEN']

print (token)

印刷品:

7ed20f28d4d6436fb6083dd9f18a5241

您的“token”实际上是一个列表,[0]只是选择该列表中的第一个(也是唯一的?)项,它是一个字符串。如果你想剥去绳子本身,你必须这样做:

    rtoken = token[0][11:43]

相关问题 更多 >