我不是程序员。这是我的第一个节目。你知道吗
我想:
我有#1要工作,但是当我搜索字符串“June 5,2017”时,我得到下面列出的错误。你知道吗
错误消息
Traceback (most recent call last):
File "C:\Users\Family\Documents\Python Programs\webpagecopy2.py", line 8, in <module>
if "June 5, 2017" in webPageCopy:
TypeError: a bytes-like object is required, not 'str'
代码如下:
# webpagecopy2.py
import urllib.request
webpagestring = " "
url = 'https://www.nwbio.com/press-releases/'
response = urllib.request.urlopen(url)
webPageCopy = response.read()
print(webPageCopy)
if "June 5, 2017" in webPageCopy:
print ('success')
如有任何建议,将不胜感激。你知道吗
因为
"June 5, 2017"
是一个str对象,而webPageCopy
是一个类似字节的对象。你知道吗您需要将
webPageCopy
转换为str类型。你知道吗或者将“2017年6月5日”定义为Wasi Ahmad提到的类似字节的对象。你知道吗
就这么做吧。你知道吗
在您的示例中,从
response.read()
获得的所有数据都是bytes对象,而不是string。在python中可以看到对象的类型,如下所示。你知道吗因此,在目标字符串之前添加前缀(
b
)可以解决问题。你知道吗其他替代方案:
或者
webPageCopy
是一个^{in
运算符,您必须提供另一个bytes
(或类似字节的)对象。幸运的是,这在Python中非常简单-只要在表示文字时使用b
前缀:相关问题 更多 >
编程相关推荐