使用 urllib2 下载用于评估变量的文本
Using urllib2 to download text to be used to evaluate a variable
正在从网络服务器下载文本页 c.txt。 c.txt 只包含字母 'c' 。能够很好地下载文件并打印其内容,字符'c'。但是,不能在下面的代码中使用它的内容:
import urllib2
req = urllib2.Request('http://localhost/c.txt')
response = urllib2.urlopen(req)
result = str(response.read())
print(result) # prints 'c' just fine
furl = "c"
furl = str(furl)
if result == furl: # Does not work
print('Correct')
没有错误发生。只是行不通
result
中很可能多了一个白色 space 字符。您可以通过在两面打印字符来检查它。
print '>%s<' % result
如果结果看起来像 >c <
你有一个尾随的白色 space(包括换行符)。
要从字符串中删除前导和尾随白色 space,您可以对字符串使用 strip()
方法。
result = str(response.read()).strip()
或者你也可以直接在比较点上做。
if result.strip() == furl:
print 'correct'
正在从网络服务器下载文本页 c.txt。 c.txt 只包含字母 'c' 。能够很好地下载文件并打印其内容,字符'c'。但是,不能在下面的代码中使用它的内容:
import urllib2
req = urllib2.Request('http://localhost/c.txt')
response = urllib2.urlopen(req)
result = str(response.read())
print(result) # prints 'c' just fine
furl = "c"
furl = str(furl)
if result == furl: # Does not work
print('Correct')
没有错误发生。只是行不通
result
中很可能多了一个白色 space 字符。您可以通过在两面打印字符来检查它。
print '>%s<' % result
如果结果看起来像 >c <
你有一个尾随的白色 space(包括换行符)。
要从字符串中删除前导和尾随白色 space,您可以对字符串使用 strip()
方法。
result = str(response.read()).strip()
或者你也可以直接在比较点上做。
if result.strip() == furl:
print 'correct'