在变量上使用 strip() 的问题
Issues using strip() on a variable
我正在尝试去除字符 b,'()
。
我遇到的问题是它说 TypeError 'str' 不支持缓冲区接口。
这里是代码的相关部分:
import urllib3
def command_uptime():
http = urllib3.PoolManager()
r = http.request('GET', 'https://nightdev.com/hosted/uptime.php?channel=TrippedNW')
rawData = r.data
liveTime = bytes(rawData.strip("b,\'()", rawData))
message = "Tripped has been live for: ", liveTime
send_message(CHAN, message)
你拥有的是二进制数据。它不是一个字符串。您需要先对其进行解码。
另外,你不需要在 strip 方法中将 rawData
传递给它自己。
import urllib3
def command_uptime():
http = urllib3.PoolManager()
r = http.request('GET', 'https://nightdev.com/hosted/uptime.php?channel=TrippedNW')
strData = r.data.decode('utf-8')
liveTime = strData.strip("b,\'()")
message = "Tripped has been live for: %s" % liveTime
print(message)
command_uptime()
另请注意,您的 message
变量是元组而非字符串。我不知道 send_message
是否期望这样。我把它格式化成一个字符串。
只需删除第二个参数。
import urllib3
def command_uptime():
http = urllib3.PoolManager()
r = http.request('GET', 'https://nightdev.com/hosted/uptime.php?channel=TrippedNW')
rawData = r.data
liveTime = bytes(rawData.strip("b,'()"))
print("Tripped has been live for: %s" % liveTime)
command_uptime()
输出:
Tripped has been live for: 1 hour, 18 minutes
我正在尝试去除字符 b,'()
。
我遇到的问题是它说 TypeError 'str' 不支持缓冲区接口。
这里是代码的相关部分:
import urllib3
def command_uptime():
http = urllib3.PoolManager()
r = http.request('GET', 'https://nightdev.com/hosted/uptime.php?channel=TrippedNW')
rawData = r.data
liveTime = bytes(rawData.strip("b,\'()", rawData))
message = "Tripped has been live for: ", liveTime
send_message(CHAN, message)
你拥有的是二进制数据。它不是一个字符串。您需要先对其进行解码。
另外,你不需要在 strip 方法中将 rawData
传递给它自己。
import urllib3
def command_uptime():
http = urllib3.PoolManager()
r = http.request('GET', 'https://nightdev.com/hosted/uptime.php?channel=TrippedNW')
strData = r.data.decode('utf-8')
liveTime = strData.strip("b,\'()")
message = "Tripped has been live for: %s" % liveTime
print(message)
command_uptime()
另请注意,您的 message
变量是元组而非字符串。我不知道 send_message
是否期望这样。我把它格式化成一个字符串。
只需删除第二个参数。
import urllib3
def command_uptime():
http = urllib3.PoolManager()
r = http.request('GET', 'https://nightdev.com/hosted/uptime.php?channel=TrippedNW')
rawData = r.data
liveTime = bytes(rawData.strip("b,'()"))
print("Tripped has been live for: %s" % liveTime)
command_uptime()
输出:
Tripped has been live for: 1 hour, 18 minutes