报错AttributeError: ResultSet object has no attribute ‘get_text‘.

时间:2024-10-09 10:58:33

问题背景

使用python的beautifulsoup库爬取网页数据的时候,使用select方法找标签并赋值,get_text()提取文本内容时,报错:

AttributeError: ResultSet object has no attribute 'get_text'. You're probably treating a list of elements like a single element. Did you call find_all() when you meant to call find()?

  • 1
  • 2

原来代码如下:

date = i.select('.c-abstract')
dict['date'].append(''.join(date.get_text().split()))
  • 1
  • 2

问题解决

原因是使用select方法得到的数据是列表,必须将其中的值提出来才可以使用get_text()方法提取文本,而本次使用select方法后得到数据后并没有将列表中的值提取出来,列表是没有get_text()方法的
在这里插入图片描述
修改的代码如下

date = i.select('.c-abstract')
# date[0]将里面的值提取出来
dict['date'].append(''.join(date[0].get_text().split()))
  • 1
  • 2
  • 3

成功得到文本
在这里插入图片描述