python爬虫,requests非常好用,建议使用。匹配结果使用re正则,列:
# -*- coding:utf-8 -*-
import re
str1 = """
寻梦环游记
...
9.0
"""
title = re.search(r'(.*?)', str1)
if title:
print(title.group(1))
rating = re.search(r'(.*?)', str1)
if rating:
print(rating.group(1))
粗略看了下,你实际爬取评分的时候因为star下面的子节点有多个相同的标签。因此你不能用爬取电影名称的方式爬取评分。标签的contents属性你可以用上,因为contents 属性可以将tag的子节点以列表的方式输出
参考代码如下(我并未验证,只是参考官方文档来写的。你可以用这段代码去试试,如果对了,麻烦采纳):
#在你找到star所有节点的前提下
for per in star_list:
star = per.contents[1].text.strip()
movie_list.append(star)