在提取短评信息时出现数组下标越界
来源:1-4 BeautifulSoup库入门
weixin_慕设计1308382
2020-07-25 18:34:38
在提取短评信息时,发现评论信息在class="comment-info"下且拥有多个相同类名,我的思路是通过循环依次保存到列表中,但尝试后还是存在数组下标越界的异常,请问如何解决?
from bs4 import BeautifulSoup
import requests
# 定义URL
url_douban_movie = "https://movie.douban.com/subject/1292064/"
# headers
headers = {'user-agent': 'my-app/0.0.1'}
# 访问、并获取网页信息
response_douban_movie = requests.get(url=url_douban_movie, headers=headers)
# print(response_douban_movie.text)
print("-------------------------------------------------------------------------------")
# 解析网页
soup = BeautifulSoup(response_douban_movie.text, 'html.parser')
# print(soup.prettify())
# 提取目标信息
# 标题提取
# print(soup.title.string)
# print(soup.find_all(property="v:summary")[0].text)
# 提取短评信息
# print(soup.find_all("span",class_="comments-info")[0])
item=[]
for i in range(1000):
item.append(soup.find_all("span",class_="comments-info")[i])
for i in range(1000):
print(item[i])
1回答
你的line29是这个吗:
for i in range(1000):
item.append(soup.find_all("span",class_="comments-info")[i])
首先,你得保证soup.find_all里面comments-info有100条,所以,你先要确定soup里面有多少这个数据。有一个改善的方法,for i < len(soup.find_all("span",class_="comments-info"),你看下这个逻辑,是否ok?
相似问题